设为首页收藏本站获取积分奖励

R语言中文网

 找回密码
 立即注册
查看: 11175|回复: 32

[知识分享] 每R一点:各种画地图,全是知识点,90%人不知道!

[复制链接]
发表于 2015-1-22 16:28:27 | 显示全部楼层 |阅读模式
本帖最后由 editor 于 2015-1-22 16:50 编辑

每R一点:各种画地图,全是知识点,90%人不知道!

2015-01-22小RR语言中文网
微信扫一扫
获得更多内容

本期内容导读
R语言绘制地图,在数据分析中经常能够用到,并且会达到非常好的展示效果,本节以例子形式,介绍如何使用R语言工具,画出理想的地图。

本节例子在 R version 2.15.3版本下运行顺畅,其他版本待定。
代码如下:第一个小例子

#加载相应的包,并读入数据,最后画图。
library(maptools);
library(ggplot2);

china_map<-readShapePoly("d://map//bou2_4p.shp", proj4string=CRS("+proj=longlat +ellps=clrk66"));

plot(china_map);






...

下面使用ggplot来画。

ggplot(china_map, aes(x = long, y = lat, group = group)) +
  geom_polygon(fill = "beige") +
  geom_path(colour = "grey40");






画一个更好看的地图 ,如何!


x<-china_map@data;  # S4类数据 用@ 取子集
xs<-data.frame(x,id=seq(0:924)-1);
# library(ggplot2)
china_map1<-fortify(china_map);  # 转化为数据框

# 没有行政区域的信息啊,这就需要前面的那个数据框xs了。
library(plyr);
china_mapdata<-join(china_map1, xs, type = "full");  # 合并两个数据框

# 下面用这个新的数据框来画中国地图
ggplot(china_mapdata, aes(x = long, y = lat, group = group,fill=NAME))+geom_polygon( )+geom_path(colour = "grey40")+
scale_fill_manual(values=colours(),guide=FALSE);





再画一个城市区域型的 地图

zhejiang<-subset(china_mapdata,NAME=="浙江省");
ggplot(zhejiang, aes(x = long, y = lat, group = group,fill=NAME))+
geom_polygon(fill="beige" )+
geom_path(colour = "grey40")+
ggtitle("中华人民共和国浙江省")+
geom_point(x=120.12,y=30.16,fill=FALSE)+
annotate("text",x=118.3,y=30,label="杭州市");




关注点:
⊙ 上面只是介绍几种画图的办法。除此之外,还有更多地图函数,各位朋友可以好好找找看。对于地图中具体的参数和相应指标,可以用R自带帮助文档查看。请长期关注、分享朋友圈 收获更多内容。
关注我们
—官方网站—
R语言中文网  www.r-china.net
—官方QQ群—
R语言中文论坛-2(1000人群):427060123
R语言中文论坛(2000人群,已满):74076289
Biostatistician(500):186701945
—官方微博—
新浪微博:@R语言中文网官网
—官方微信—
微信名:R语言中文网  微信号:rchinanet



微信扫一扫
获得更多内容



回复

使用道具 举报

发表于 2015-1-22 19:14:51 | 显示全部楼层
> zhejiang<-subset(china_mapdata,NAME=="浙江省");
> ggplot(zhejiang, aes(x = long, y = lat, group = group,fill=NAME))+
+ geom_polygon(fill="beige" )+
+ geom_path(colour = "grey40")+
+ ggtitle("中华人民共和国浙江省")+
+ geom_point(x=120.12,y=30.16,fill=FALSE)+
+ annotate("text",x=118.3,y=30,label="杭州市");
将最后面代码打入之后出现
Error: invalid color name 'FALSE'  什么原因。图出不来
回复 支持 反对

使用道具 举报

发表于 2015-1-22 20:57:52 | 显示全部楼层
d://map//bou2_4p.shp
回复 支持 反对

使用道具 举报

发表于 2015-1-22 20:58:30 | 显示全部楼层
找不到 d://map//bou2_4p.shp
回复 支持 反对

使用道具 举报

发表于 2015-1-23 10:54:18 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2015-1-24 22:15:20 | 显示全部楼层
进来学习了,顶一个
回复 支持 反对

使用道具 举报

发表于 2015-1-28 10:53:03 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2015-1-28 21:19:31 | 显示全部楼层
收藏
回复 支持 反对

使用道具 举报

发表于 2015-1-29 17:50:54 | 显示全部楼层
高手学习了
回复 支持 反对

使用道具 举报

发表于 2015-1-29 18:04:31 | 显示全部楼层
地图包怎么下载?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Archiver|R语言中文网    

GMT+8, 2024-5-20 18:31 , Processed in 0.025645 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表