vlambda博客
学习文章列表

论文里地图怎么画,python来帮忙!

如何用地图展示不同地区的数据差异?本文给你介绍了个好工具。

pyecharts简介

最近想在地图当中呈现数据,由于不会ArcGis,而且Excel的地图功能在国内不能用,我先查了一下使用R语言画统计地图的方法,需要导入地图,还需要下载地理坐标系,看着就让人头秃。这时候小伙伴给我推荐了Python中的pyecharts包,我试用了一下感觉真的是好,现在推荐给大家。

pyecharts支持链式调用,能绘制超过30种常见图表,支持主流 Notebook,Jupyter Notebook 和 JupyterLab,可轻松集成至 Flask,Sanic,Django 等主流 Web 框架中。示例中的图形一个比一个炫酷,我就不多赘述了,直接放几个图你们自己看。

论文里地图怎么画,python来帮忙!

论文里地图怎么画,python来帮忙!

论文里地图怎么画,python来帮忙!
论文里地图怎么画,python来帮忙!
接下来我们主要来谈一下最后一幅图,也就是统计地图怎么画。pyecharts的中文文档介绍其包含多达400+的地图文件,并且支持原生百度地图,可以为地理数据可视化提供强有力的支持。

代码示例

下面我们以宁夏为例来展示这个包画地图的用法,关键的设置项我都加上了注释,废话不多说,上代码:
import numbersfrom pyecharts import options as optsfrom pyecharts.charts import Map
#这个区域输入你的城市和对应城市的数据number = [['石嘴山市', 5],['银川市', 4],['吴忠市', 3],['中卫市', 2],['固原市', 1],]
city="宁夏" # 宁夏省城市比较少,适合演示
(Map().add( series_name="这个是图例", data_pair=number, maptype=city, is_map_symbol_show=True, label_opts= opts.LabelOpts(number), )
# 全局配置.set_global_opts( toolbox_opts=opts.ToolboxOpts(), title_opts=opts.TitleOpts(title=city+"地图"), # 图表标题 visualmap_opts=opts.VisualMapOpts(max_=5,min_=1, is_piecewise=True, range_color=['#FFECEC','#EA0000']),    # 这里的max和min需要根据数据来设置,range_color如果不设置的话也能出图,按默认值上色;需要自定义的我提供好几个颜色查询网站 ) # 系列配置.set_series_opts( label_opts=opts.LabelOpts(is_show=True, color="black", font_size = 10, rotate = 0) # 标签名称显示,默认为True,其它控制字体颜色,大小,方向 )
.render("统计分析与数据服务.html")# 生成本地html文件)


下面这幅图是不设置range_color具体值的效果:

论文里地图怎么画,python来帮忙!

下面是将 range_c olor设置为'#FFECEC','#EA0000'时的效果,这两个颜色是我自选的,选颜色的网站已经给你们罗列在下面。

论文里地图怎么画,python来帮忙!


查询颜色去这些网站,http://www.mgzxzs.com/sytool/se.htm
https://tool.chinaz.com/tools/pagecolor.aspx
http://tools.jb51.net/static/colorpicker/

论文里地图怎么画,python来帮忙!


图形绘制出来之后,可能各位对图例的位置、标题形式等等细节还有不太满意的地方,对于常写论文的人,可以很容易的使用 Adobe Illustra tor进行修改,我就不多说了。

另外pyecharts包还支持调用百度地图,如果你需要更精细的图,可以查询 pyecharts包中BMap的章节,这个模块需要调用百度API,需要你去申请百度地图的token。

学习资源

pyecharts包做的确实很不错,简单好用,下面提供了这个包的学习网站.

项目中文文档:https://pyecharts.org/#/zh-cn/intro


作者说如果觉得他的作品好用,可以请他喝杯咖啡,我觉得值。请大家支持这位良心作者。当然,如果你觉得我写的这篇推送能对你有所帮助,也请你关注、点赞和转发我们的文章。

END


参考资料

https://pyecharts.org/#/zh-cn/intro
https://github.com/pyecharts/pyecharts