我寻求有关如何更改附加地图上sp.text标签的fontsize和fontcolor的帮助。避免标签重叠,并提高可读性。
地图制作如下。如果需要,可以在此处下载spacepolypolygonsdataframe'mymap' 。
trellis.par.set()无法解决我的问题,我使用不正确吗?
library(sp)
library(latticeExtra)
# Create list object for sp.layout (Got these functions here on stackoverflow, thank you owner)
sp.label <- function(x, label) {list("sp.text", coordinates(x), label)}
NUMB.sp.label <- function(x) {sp.label(x, as.vector(x@data$NUMB))}
make.NUMB.sp.label <- function(x) {do.call("list", NUMB.sp.label(x))}
# Spplot
tps <- list(fontsize=list(text=5), fontcolor=list(text="green"))
trellis.par.set(tps)
spplot(mymap, "indic",
col.regions=c("#D3D3D3","#A9A9A9"),
sp.layout = make.NUMB.sp.label(mymap),
cex = 0.5,
bg = "white", col="light grey", border="light grey")
Run Code Online (Sandbox Code Playgroud)

找到解决方案:需要在列表中添加 cex, col 参数:
list("sp.text", coordinates(x), label, cex=0.5, col="green")
Run Code Online (Sandbox Code Playgroud)