使用R读取shapefile并画地图的过程

下面是一个使用R语言绘制地图的例子。

 

# 首先需要加载需要使用的两个package:
library(maptools)
library(rgdal)
# 读取数据并绘图,下面读取的是中国行政区域的shapefile到变量x中:
x=readShapePoly('bou2_4p.shp')
# 现在我们可以直接画出地图:
plot(x)

 使用R读取shapefile并画地图的过程_第1张图片

 

 

但是上面的绘图并未使用投影而是直接使用经纬度作为平面坐标进行绘图,所以是不合适的。下面的代码首先进行mercator投影然后绘图。

# 首先,我们需要指定x本身的投影信息,下面一行代码指定x对应的投影为原始的地理坐标(经纬度):
proj4string(x) <- CRS("+proj=longlat +ellps=WGS84")
# 然后我们指定新的投影方式,并将x投影到其上:
projNew <- CRS("+proj=merc +lat_0=45n +lon_0=100e")
xProj <- spTransform(x, projNew)
# 现在我们可以画出它了:
dev.new()
plot(xProj)

 

你可能感兴趣的:(数据可视化,R语言)