R:tmap图例格式
我试图创建一个函数来映射特定州的学区的不同变量。但是,我遇到了一些设置图例格式的问题。目前,我已经制定了适合地图的最佳方式(水平),但一些文字正在被删除(低于平均贫困率),我想在图例中的数字标签上添加%。下面是我的代码和图例的图像。如果您能提供任何帮助,我们将不胜感激。多谢各位R:tmap图例格式,r,format,legend,tmap,R,Format,Legend,Tmap,我试图创建一个函数来映射特定州的学区的不同变量。但是,我遇到了一些设置图例格式的问题。目前,我已经制定了适合地图的最佳方式(水平),但一些文字正在被删除(低于平均贫困率),我想在图例中的数字标签上添加%。下面是我的代码和图例的图像。如果您能提供任何帮助,我们将不胜感激。多谢各位 MakeLEAMap <-function(StateNum,NCHE_VAR,VAR1_NAME,In,Folder){ as.character(substitute(StateNum)) as.cha
MakeLEAMap <-function(StateNum,NCHE_VAR,VAR1_NAME,In,Folder){
as.character(substitute(StateNum))
as.character(substitute(NCHE_VAR))
as.character(substitute(NCHE_In))
as.character(substitute(VAR1_NAME))
as.character(substitute(Folder))
map <-
tm_shape(LEA_1415_New[LEA_1415_New@data$STATEFP == StateNum, ]) +
tm_polygons(NCHE_VAR,border.col="#000000", lwd= .5, textNA="Below Average \nPoverty Rate" , palette = 'Blues', style="quantile",
title=paste(In," State LEA Map: ",VAR1_NAME),
legend.is.portrait = FALSE) +
tm_text("LCITY", size=NCHE_VAR,scale=.8, root=2,print.tiny = FALSE, size.lowerbound = .85, bg.alpha = .75,
remove.overlap = TRUE,legend.size.show = FALSE, col="black") +
tm_layout( legend.title.size = 3,
frame = FALSE, inner.margins = c(0,.0,.05,.0), asp = 1.5,
legend.text.size = 1,
legend.outside=TRUE, legend.outside.position = 'bottom',
legend.frame = TRUE,
legend.outside.size = .3, legend.position = c(-0.1, 0.3))
save_tmap(map, filename=paste("State_Maps_TEST/",Folder,"/",In,".pdf", sep = ''),width=8, height=8 )
}
MakeLEAMap("48","Abv_Diff_Home_Pov","% Children in Poverty minus \n% Children HCY (Ages5-17)",
"TX","ALL")
MakeLEAMap要使图例显示百分比,请在tm_多边形中使用此函数调用:
legend.format=list(fun=function(x)paste0(formatC(x,digits=0,format=“f”),“%”)
你可以玩数字(小数点),如果你愿意,你可以把空格放在%符号之前
要使图例更清晰,请通过制作更大的bbox(可能使用光栅
软件包中的范围
功能读取空间对象的bbox,然后将其放大)来增加地图周围的空间,并通过调整其位置来移动图例
这是我在另一个上下文中提出的,但也要求在tmap
legend中使用百分比符号。
我认为这是相关的: