jupyter notebook(python)使用pycharts库实现动态地图展示
标签: 可视化 jupyter python numpy conda 开发语言
今天和大家讲动态展示中国地图,下面数据都是自己随机编写的,其没有任何参考价值,如果对简单的画中国地图不了解可以参考我先前的博文,链接如下:
Python使用pyecharts库画简单的中国地图_小琼带你轻松学编程的博客-CSDN博客_pyecharts画地图
首先导入需要的库,pyecharts和numpy,pyecharts主要用来画动态图,numpy用来做数据统计,如果没有可以使用 :
pip install numpy
pip install pyecharts
进行下载,如果速度特别慢可以尝试添加清华大学镜像源(可自行选择需要的),命令如下:
pip install -i numpy https://pypi.tuna.tsinghua.edu.cn/simple
pip install pyecharts -i https://pya.edu.cn/simple
镜像源如下:
清华大学:https://pypi.tuna.tsinghua.edu.cn/simple
北京理工大学:http://mirror.bit.edu.cn/web/
中国科技大学 :https://pypi.mirrors.ustc.edu.cn/simple/
中国科学院:http://www.opencas.org/mirrors/
华中理工大学:http://pypi.hustunique.com/
山东理工大学:http://pypi.sdutlinux.org/
阿里云:http://mirrors.aliyun.com/pypi/simple/
豆瓣:http://pypi.douban.com/simple/
淘宝:http://npm.taobao.org/
网易:http://mirrors.163.com/
搜狐:http://mirrors.sohu.com/
导入需要的库pyecharts和numpy
from pyecharts import options as opts
from pyecharts.charts import Map, Timeline
import numpy as np
导入所需要的数据,可按需自行修改数据的值,代码如下:
province_dis = {'宁夏':155,'河南':355, '北京': 117, '河北': 521, '辽宁': 612, '江西': 126, '上海':1520, '安徽': 230, '江苏': 226, '湖南': 449,'浙江': 553, '海南': 512, '广东': 712, '湖北': 118, '黑龙江': 111, '澳门': 191, '陕西': 211, '四川': 717, '内蒙古': 113, '重庆': 13,'广西':81,'云南': 216, '贵州': 121, '吉林': 131, '山西': 131, '山东': 111, '福建': 341, '青海': 151, '天津': 131,'新疆':150,'西藏':170,'甘肃':120,'台湾':31}
provice = list(province_dis.keys())
values = list(province_dis.values())
province_dis1 = {'宁夏':55,'河南': 145, '北京': 137, '河北': 121, '辽宁': 112, '江西': 16, '上海':120, '安徽': 110, '江苏': 116, '湖南': 119,'浙江': 113, '海南': 12, '广东': 212, '湖北': 18, '黑龙江': 111, '澳门': 11, '陕西': 111, '四川': 17, '内蒙古': 13, '重庆': 13,'广西':81,'云南': 16, '贵州': 21, '吉林': 31, '山西': 11, '山东': 111, '福建': 41, '青海': 51, '天津': 11,'新疆':150,'西藏':170,'甘肃':120,'台湾':31}
values1 = list(province_dis1.values())
sum_vlaues=[]
sum_vlaues.append(values),sum_vlaues.append(values1)
其中provice存放了所有省份的名字,values 和values1存放的是2015年和2016年的对应省份的数据,sum_vlaues存放的是2015和2016省份的所有数据集。
实现动态中国地图,其代码如下:
tl = Timeline()
for i in range(2015, 2017):
map_min=int(np.min(sum_vlaues[i-2015]))
map_max=int(np.max(sum_vlaues[i-2015]))
china = (
Map()
.add("", [list(z) for z in zip(provice, sum_vlaues[i-2015])], "china")
.set_global_opts(title_opts=opts.TitleOpts(title="中国地图"), visualmap_opts=opts.VisualMapOpts(type_='color',min_=map_min,max_=map_max))
)
tl.add(china, "{}年".format(i))
其中t1代表的是时间序列,是实现动态中国地图的关键所在,map_min和map_max分别存放了对应年分数据的最大值和最小值,china代表的是绘制中国地图,其中Map()代表要画的是地图,.add()代表的是省份名字和对应年份的数据集,还有图的名称,.set_global_opts()表示地图的左上角主题和色斑地图的颜色和区间,无要求可以不需要更改。
最后就是实现地图动态展示和在jupyter notebook展示:
tl.add_schema(is_auto_play=True, play_interval=1000)
tl.render_notebook()
如果不需要展示在jupyter notebook上面可以将tl.render_notebook()改为tl.render(“filename”)保存到你所需要的filename下面。
最后我们的动态图就展示出来了,运行结果如下:


大家能够全部掌握之后,可以依葫芦画瓢来动态实现饼图和直方图,链接如下:
jupyter notebook画简单饼图,直方图_小琼带你轻松学编程的博客-CSDN博客_jupyter画饼状图
后期会出一篇博文为大家更加详细的讲解,如何制作动态饼图和直方图。
全部代码如下所示:
from pyecharts import options as opts
from pyecharts.charts import Map, Timeline
import numpy as np
province_dis = {'宁夏':155,'河南':355, '北京': 117, '河北': 521, '辽宁': 612, '江西': 126, '上海':1520, '安徽': 230, '江苏': 226, '湖南': 449,'浙江': 553, '海南': 512, '广东': 712, '湖北': 118, '黑龙江': 111, '澳门': 191, '陕西': 211, '四川': 717, '内蒙古': 113, '重庆': 13,'广西':81,'云南': 216, '贵州': 121, '吉林': 131, '山西': 131, '山东': 111, '福建': 341, '青海': 151, '天津': 131,'新疆':150,'西藏':170,'甘肃':120,'台湾':31}
provice = list(province_dis.keys())
values = list(province_dis.values())
province_dis1 = {'宁夏':55,'河南': 145, '北京': 137, '河北': 121, '辽宁': 112, '江西': 16, '上海':120, '安徽': 110, '江苏': 116, '湖南': 119,'浙江': 113, '海南': 12, '广东': 212, '湖北': 18, '黑龙江': 111, '澳门': 11, '陕西': 111, '四川': 17, '内蒙古': 13, '重庆': 13,'广西':81,'云南': 16, '贵州': 21, '吉林': 31, '山西': 11, '山东': 111, '福建': 41, '青海': 51, '天津': 11,'新疆':150,'西藏':170,'甘肃':120,'台湾':31}
values1 = list(province_dis1.values())
sum_vlaues=[]
sum_vlaues.append(values),sum_vlaues.append(values1)
tl = Timeline()
for i in range(2015, 2017):
map_min=int(np.min(sum_vlaues[i-2015]))
map_max=int(np.max(sum_vlaues[i-2015]))
china = (
Map()
.add("", [list(z) for z in zip(provice, sum_vlaues[i-2015])], "china")
.set_global_opts(title_opts=opts.TitleOpts(title="中国地图"), visualmap_opts=opts.VisualMapOpts(type_='color',min_=map_min,max_=map_max))
)
tl.add(china, "{}年".format(i))
tl.add_schema(is_auto_play=True, play_interval=1000) # 自动播放,跳动的间隔为1000ms
tl.render_notebook()
智能推荐
【Python】Jupyter Notebook
1.安装 2. 切换工作空间 2.1 找到配置文件路径 jupyter notebook --generate-config 2.2 修改配置文件 c.NotebookApp.notebook_dir = u'' --> c.NotebookApp.notebook_dir = 'd:\workspace\jupyter' 3. 运行jupyter 双击:{pythonhome}\...
Jupyter Notebook的使用
命令模式 (按键 Esc 开启) Enter : 转入编辑模式 Shift-Enter : 运行本单元,选中下个单元 Ctrl-Enter : 运行本单元 Alt-Enter : 运行本单元,在其下插入新单元 Y : 单元转入代码状态 M :单元转入markdown状态 R : 单元转入raw状态 1 : 设定 1 级标题 2 : 设定 2 级标题 3 : 设定 3 级标题 4 : 设定 4 级标...
Jupyter notebook 使用教程
1 jupyter notebook简介 2 启动 3 创建新的文件 4 快捷键的使用 4.1 命令模式 4.2 编辑模式 5 导出 6 Matplotlib集成 1 jupyter notebook简介 jupyter notebook是一个在线编辑器,可以在网页上编辑程序,在编辑的过程中,每次编辑一行代码就可以运行一行代码,运行的结果也可以显示在代码的下方,方便查看。当所有的程序编写和运行完毕...
jupyter notebook的使用
1.Jupyter Notebook 的快捷键 Jupyter Notebook有两种键盘输入模式。 编辑模式,允许你往单元中键入代码或文本;这时的单元框线是绿色的。 命令模式,键盘输入运行程序命令;这时的单元框线是灰色。 1.11.1 命令模式 (按键 Esc 开启) 命令 意义 Enter 转入编辑模式 Shift-Enter 运行本单元,选中下个单元 Ctrl-Enter 运行本单元 Alt...
Jupyter Notebook的使用
文章作者:Tyan 博客:noahsnail.com | CSDN | 简书 1. 介绍 Jupyter Notebook有两种不同的键盘输入模式。编辑模式允许输入代码/文本到一个单元格中,并以绿色单元格边框表示,此时命令模式的快捷键不起作用。命令模式将键盘绑定到计算机级别的操作,并由具有蓝色左边距的灰色单元格边框指示,可以用快捷键命令运行单元格,移...
猜你喜欢
jupyter notebook使用技巧
从工作开始接触Jupyter notebook,结合ipython来使用简直是爽,相见恨晚,不愧是python的一大利器,当然Jupyter notebook也支持别的语言,不过别的就不熟悉了,有一些notebook的使用技巧记录如下,希望更多的人能够从Jupyter notebook中像我一样获得更大的乐趣。 参考: https://www.ishuo.cn/doc/kb...
Jupyter Notebook使用
Jupyter Notebook 使用指南 简介 Jupyter Notebook是一个能运行Python代码的Web应用程序,是当今进行机器学习实践的主流工具。它具有很多完美的特性,在进行Python项目的开发时也可以使用Jupyter Notebook来代替IDE。希望本文能让你对这一神器有更快的入门理解。 IPython 如果你使用过Python,应该会在安装完成,配置好环境变量后打开过cm...
冒泡排序,及改进方式,性能优化400%>>>附图解加源码
首先源码附上,源码中带有注释,看不懂没关系,源码后面附带图解,最后附上代码效率提升图 源码如下: 方案一:其实实现很简单,两层循环,每次内层迭代出最大的一个值,将其放入数组最后一个位置,外层循环的末端便往前移一位。其原理如下图 方案一代码块: 方案二:优化改进 仔细观察上面的图,我们不难发现当迭代到图下这样的情况时,其实已经全排序好了,但是我们还是需要对它进行1,2,3,4,5,6的迭代,这些情况...
css3常用选择器
先介绍一下基本选择器,如下几种 *:通配符。选择页面的所有元素 E:元素选择器。对页面的一些元素进行选择,如p,div,li等 .class:类选择器 #id:id选择器。一个Id在一个页面中只能选择,这是和类选择器的区别 E F:后代选择器。如ul li。选中ul下的li E>F:子元素选择器。如下,可以用 h1 > strong {color:red;}使h1的子元素strong变...
python is not set from command line or npm configuration
问题 猜测原因 python版本冲突 解决方案 去官网找到最新版本python 点击下载,注意记住你下载的目录,下载好以后,打开这个目录下的文件夹,Python310, 整个文件夹复制一下 在项目里运行npm config list --json 找到python的路径 我的是 C:\\Python27\\python.exe 说明项目里用的还是py...
