R - 使用spplot绘制点时无法自定义切割值

时间:2017-11-29 20:58:16

标签: r plot customization shapefile

我正在使用 spplot 绘制shapefile。我需要根据其属性值为shapefile的每个点赋予不同的颜色。

我的shapefile属性表如下所示: Attribute_Table。我必须根据秋季,冬季,春季和夏季的价值绘制积分(总共我有4个地块,每个季节1个)。

通过运行此代码( r_values 是我的shapefile):

# Defining point size
point_size = 0.8

# Defining where cuts are
classes_R = seq(-1,1,0.05)

# Defining color of scale bar
my.palette_R = brewer.pal(n = 10, name = "RdBu")

spplot(r_values, zcol = c("Fall","Winter","Spring","Summer"), do.log = F,as.table = T,
   pch = 20, cex = point_size, key.space = "right", col.regions = my.palette_R,
   main = "R Values - P Model", colorkey = T, at=classes_R,
   sp.layout=(list(new_layer_1,new_layer_2))) #sp.layout is for 2 other layers (you can see the states in gray and the lakes in blue in backround

我得到了这个情节:Plot

更改classes_R中的剪辑(类)不会更改结果图。

我想要获得的是一张地图,每0.05的切割范围从-1到+1,并且缩放条右侧的标签带有这些切割。

这是一个下载带有一些数据的excel文件的链接。它是包含点坐标的数据框

https://drive.google.com/open?id=1WPyS5TFGCxBDNhJIJc_jKvFmJd5hthl4

1 个答案:

答案 0 :(得分:0)

答案在" ssplot"的R文档中。它说:

  

剪切:剪切次数,或者,对于仅限于SpatialPointsDataFrame类的对象,使用的实际剪切

所以在这种情况下" cut"不是指示切割次数的整数,但它是包含要使用的实际切割的矢量。

我使用选项" cut"更改了代码。而不是" at"它起作用了。