我有以下几种格式的文件:纬度,经度,值。 我想用绘制的纬度,经度点的每一个这样的价值和欧盟地图上重叠它的彩色栅格地图。
感谢你的支持。
我有以下几种格式的文件:纬度,经度,值。 我想用绘制的纬度,经度点的每一个这样的价值和欧盟地图上重叠它的彩色栅格地图。
感谢你的支持。
大致有两种选择:使用一个格子和SP包和其他使用GGPLOT2包:
首先,你必须将数据转换为一个SpatialPixelsDataFrame
(由SP-包中提供),假设你的数据被称为df
:
require(sp)
gridded(df) = c("lat","lon")
然后绘图:
spplot(df, "value")
覆盖更多的信息,如国家边界可以用做sp.layout
参数:
spplot(df, "value", sp.layout = list("sp.lines", cntry_boundaries))
其中cntry_boundaries
是SpatialLines(DataFrame)
,或SpatialPolygons(DataFrame)
。 读取polygonset成R可以用做rgdal
包,或maptools
包( readShapeLines
)。
我个人更喜欢使用ggplot2
超过spplot
。 ggplot2
更加灵活,有一个更清晰的语法。 需要注意的是ggplot2
正常工作data.frame
的,而不是与SP包的空间对象。
一个最小的例子看起来是这样的:
ggplot(aes(x = lat, y = lon), data = df) + geom_tile(aes(fill = value)) +
geom_path(data = cntry_boundaries)
欲了解更多信息,请参阅我的这些早期的答案: