R语言画地图方法总结

来源:互联网 发布:笛子伴奏软件 编辑:程序博客网 时间:2024/06/05 20:48
总的来说,R中的画地图的方法不外乎两种,一种是利用GIS方面的数据,在R中画出来,另一种是直接从谷歌地图等地方拿来主义。
先说第一种,最早应该是从maps包开始的,这个包里没记错的话应该用map函数为主,
>map("world", fill = TRUE, col = rainbow(200),ylim = c(-90, 90), mar = c(0, 2, 0, 0));
>title("worldmap");
这种用法大家应该很熟了,比较可惜的是里面的数据是在是太少了,连张中国地图都画不了,好在后来有了mapdata等一系列的包,CRAN上maps包后面那一串全是,具体的内容看一下文档就ok啦,可是问题又来了,R包里的数据总是不够用的,而且还不新,这个时候就可以考虑sp包了,包里的spplot函数可以用来画地图,数据则可以直接从gadm(http://gadm.org/country)上下载,上面的数据应该是比较全的,附上一段简单的代码作为例子:
library(sp);
con<-file("CHN_adm1.RData")
open(con);#打开链结
print(load(con));
close(con);#关闭链结
spplot(gadm[1]);
至于为什么把台湾和南海给抠掉了,这我只能呵呵了。。。。。
其他也还有很多能画地图的包,像非常强大的ggplot2包,没记错的话之前有一个帖子讲人均水资源分布图的也是用这个包,感觉画的挺好的,赞一个。
再来说一说拿来主义,这里就不得不说ggmap,是一个非常强大的包,里面的get_map和ggmap两个函数基本就够用了,参数location选择地点,maptype选择地图类型,同样附上一段简单的代码作为例子:
library(ggmap);
map <- get_map(location = '"Zhejiang", zoom = 10, maptype = 'roadmap');
ggmap(map);
其他的包我在CRAN上扫了一下,类似的包还有RgoogleMaps、plotGoogleMaps等等
原创粉丝点击