0

我一直在尝试使用sfplot函数绘制一个 shapefile,但我得到了这个:

(shapefile 可以在这里找到:https ://drive.google.com/open?id=1AKMP9i549xESStN-R59UUU80OmkXy1XM )

sf <- st_read('fisiografia_cortado_disolve_gapis_des.shp')
plot(sf, lty = 0)

我无法正确显示密钥。我一直在玩par功能,但我认为我做错了,因为没有任何改变。

我试过:

par(mar = c(10,10,10,20)) 

和许多其他组合(c(10,5,5,20),c(10,10,10,10)),但我认为 sf plots 不依赖于par设置(如果我错了,请原谅)。

我还尝试key.size在函数中使用该属性,plot但它只会改变键的宽度(见下图左图),如果它太大,则只显示键(右图)。

plot(sf, lty = 0, key.size = 1)
plot(sf, lty = 0, key.size = 10)

我想正确显示钥匙,如果可能的话,改变它的大小。

有人遇到过同样的问题吗?

4

1 回答 1

2

您可以调整 的oma参数par以显示完整的标签。

library(sf)

dt <- st_read(system.file("shape/nc.shp", package="sf"))

par(oma = c(0, 0, 0, 4))
plot(dt["NAME"])

在此处输入图像描述

你也可以使用key.size,只要你给它一个单位lcm()。见https://r-spatial.github.io/sf/articles/sf5.html#color-keys

par(oma = c(0, 0, 0, 0)) # just resetting par
plot(dt["NAME"], key.size = lcm(4))

在此处输入图像描述

于 2017-11-03T01:08:08.517 回答