搜索
人大经济论坛 附件下载

附件下载

所在主题:
文件名:  中国热力地图.rar
资料下载链接地址: https://bbs.pinggu.org/a-2133543.html
附件大小:
481.22 KB   举报本内容
参考书目:
package:Package ‘ggplot2’
ColorChart
参考帖:
#万分感谢刘万祥的帖子(见参考帖1),基本是抄他的,我做了删减与完善,将大量的无关结果的说明删掉,新增了一些新手需要知道的说明,完善了坐标问题等#
1. http://chuansong.me/n/1434693
2. http://cos.name/2014/08/r-maps-for-china/
百度拾取坐标系统:
http://api.map.baidu.com/lbsapi/getpoint/index.html数据来源:
http://news.cngold.com.cn/20160326d1903n66387290.html
  1. #将所需的包放在了最前面
  2. require('maptools')#加载maptools包,读取shp格式文件地图数据
  3. require('ggplot2')#加载ggplot2包,提供地理学专业坐标系
  4. require('plyr')#加载plyr包,合并数据框
  5. require('xlsx')#加载xlsx包,读取xlsx格式文件
  6. china_map<-readShapePoly('C:/Program Files/R/R-3.3.2/library/Chinamap/bou2_4p.shp')#引号内为bou2_4p.shp文件路径
  7. x <-china_map@data#读取行政信息
  8. xs <-data.frame(x,id=seq(1:925)-1)#引入id信息,方便后面与chia_map1合并,-1为了与chia_map1一致同为从0开始
  9. china_map1 <-fortify(china_map)#转化为数据框
  10. china_map_data <-join(china_map1, xs, type = "full")#合并两个数据框,joining by id
  11. mydata<- read.xlsx('D:/Project_eg/table/province.xlsx',#province.xlsx路径
  12. sheetName = 'eg',#读取province.xlsx文件中sheet表的名称,注意加引号
  13. header =T,#T即为TRUE缩写,表示有标题
  14. encoding ='UTF-8')#UTF-8使xlsx文件中中文显示正常
  15. china_data <-join(china_map_data,mydata,type='full')#合并两个数据框,joining by NAME
  16. ggplot(china_data,aes(long,lat))+
  17. geom_polygon(aes(group=group,fill=人口),colour='ivory3')+#以人口的值区分各省份的颜色,col即colour缩写,为边界颜色
  18. scale_fill_gradient(low='white',high='deepskyblue4')+#low,high对应的为颜色值,代表最小值与最大值
  19. coord_map('polyconic') +
  20. geom_text(aes(x =longitude,y = latitude,label = tag),data=mydata)+#横坐标x对应经度,纵坐标y对应维度,经纬度确认的坐标为标签显示的位置,label即标签为图中显示的值
  21. theme(
  22. panel.grid = element_blank(),
  23. panel.background = element_blank(),
  24. axis.text = element_blank(),
  25. axis.ticks = element_blank(),
  26. axis.title = element_blank(),
  27. legend.position = c(0.85,0.45)#调整图例位置
  28. )
复制代码
效果图

点说明
1.为什么要写此贴,主要是自己在学习,作为记述;也方便道友们可以更加方便借鉴;
2.代码中所需的shp地图文件即xlsx数据文件均在压缩包中,本打算将r文件一块儿放入压缩包中,后决定不放入,方便新手学习,可直接复制的代码主要为时间比较紧的选手准备的;
3.excel中的坐标参照了省会坐标,平均坐标,还有人为的调整,如果不喜欢显示位置,可以到百度拾取坐标系统中查坐标,然后在excel文件中修改;
4.colors值请参照Colorchar文件(压缩包中有);
5.代码我知道意思的基本已标出,未表明的我也不是很懂;
6.某些数据(如流行病学方面)中某些省份的数据可能为0,如果想让地图中数据为0的省份不显示,xlsx文件标签tag值为空即可,如果是txt文件,将对应的tag值设为NA;读取txt文件的命令
  1. mydata <- read.table('D:/Project_eg/table/province.txt',#province.xlsx路径
复制代码
7.如果想让图中显示相应数据,excel文件只需用&函数将需要显示的值合并,label=改列的标题即可8.shp地图为400万分之一,资源来源于网络,不记得从哪里下载,在此对资源制作上传者表示抱歉。


    熟悉论坛请点击新手指南
下载说明
1、论坛支持迅雷和网际快车等p2p多线程软件下载,请在上面选择下载通道单击右健下载即可。
2、论坛会定期自动批量更新下载地址,所以请不要浪费时间盗链论坛资源,盗链地址会很快失效。
3、本站为非盈利性质的学术交流网站,鼓励和保护原创作品,拒绝未经版权人许可的上传行为。本站如接到版权人发出的合格侵权通知,将积极的采取必要措施;同时,本站也将在技术手段和能力范围内,履行版权保护的注意义务。
(如有侵权,欢迎举报)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

GMT+8, 2025-12-28 22:09