簡體   English   中英

R:tmap圖例格式

[英]R: tmap Legend Formatting

我正在嘗試創建一個函數來映射特定州的學區的不同變量。 但是我在格式化圖例時遇到了一些問題。 目前,我已經(水平)提出了適合地圖的最佳方法,但是其中一些文本被截斷(低於平均貧困率),我想在圖例中的數字標簽上添加% 。 我的代碼和圖例的圖像如下。 您能提供的任何幫助將不勝感激。 謝謝。

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")

這是傳說現在的樣子

要使圖例顯示百分比,請在tm_polygons調用中使用以下函數:

legend.format = list(fun = function(x)paste0(formatC(x,digits = 0,format =“ f”),“%”))

您可以玩數字(小數點),如果需要,可以在%符號前刪除空格。

為了使說明更清晰增加周圍地圖通過使更大的BBOX的空間(可能使用extent函數從raster包讀取您的空間物體的BBOX然后放大它),並通過調整其位置移動圖例。

這是我在不同上下文中tmap ,但是在tmap圖例中也需要使用tmap 在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM