绘制地图
1.ggplot2提供了一些工具,让使用maps包绘制的地图与其他ggplot2图形的结合变得十分方便。关于中国地图的绘制可以参考:http://cos.name/2009/07/drawing-china-map-using-r/
国家 | maps地图数据名 |
法国 意大利 新西兰 美国(郡) 美国(州) 美国(边界) 全世界 |
france italy nz country state usa world |
我们使用地图数据主要有两种原因:1.为空间数据添加参考轮廓线2.通过不同的区域填充颜色以构建等值线图。
添加地图边界可以通过borders()来完成。函数的前两个参数指定了要绘制的地图名map以及其中的具体区域region,其余的参数用于控制边界的外观。填充颜色的多边形使用的是fill。
> library(maps) > data(us.cities) > big_citi <- subset(us.cities,pop > 500000) ##人口大于50万的城市 > qplot(long,lat,data=big_citi) + borders("state",size=0.5)
> tx_city <- subset(us.cities,country.etc=="TX") > ggplot(tx_city,aes(long,lat)) + borders("county","texas",colour="grey70") + geom_point(colour = "black",alpha=0.5)
德克萨斯州的城市区划:
使用map_data将地图数据转化为数据框,此数据框可以在之后通过merge() 操作与我们的数据相融合,最终绘制处等值线图。
> states <- map_data("state") > arrests <- USArrests