原程序,数据以及需要的地理文件信息参考:https://github.com/LongxingTan/Map_plot_R
可见公众号:https://mp.weixin.qq.com/s/AMfcllfmZFR_8cV5hldcug
中国地图采用GIS数据直接画的,曾经也参考了网上很多资料。
类似飞机的航线图也可以通过ggplot画出来
实际工作中,很多时候有画地图的需求,只要一出现就是全ppt最靓的图了。这里介绍一下如何在R中用ggplot2画出好看的中国地图,是很多年前写的代码了,运行了一下发现还没有过时。下一篇介绍在python中如何画。
如果不想写代码,可以搜索“地图慧“,在线制作相关地图。如果有一定的基础,还是建议自己实现。因为自己做的可以更好看,更灵活,如果想要本文源代码,后台回复“地图”,可以得到本文源码和相关辅助数据。闲话不多说,撸起袖子加油干。一共就两步:
- 准备数据
- 画地图
准备数据阶段,我们需要国家地理信息,如果是不同的省都有各自的文件,我们这里采用全国的数据。然后就是我们自己的数据,自己的数据如果只有省份或城市,还需要一个辅助数据关联起省市与地图数据,即各个省市的经纬度。如果我们自己的数据已经自带经纬度,就省点力气了。
这三个就是我们必须的地理信息文件了
我们的数据长这个样子,其实关键的就是 City这一列,和Total Year这一列。业务意义是每个城市一整年的销量。奇奇怪怪的数据可能是某种高达模型吧。
还需要的一个辅助数据,需要知道上面各个城市的经纬度。注意这里的City名字要和上面的数据对应起来,否则无法找到该城市的位置的画,无法画出那个位置了。
这样准备工作就做好啦,开始第二步画图。
代码见:
数据以及需要的地理文件信息参考:https://github.com/LongxingTan/Map_plot_R