python的pyecharts绘制各种图表详细(附代码)


Posted in Python onNovember 11, 2019

环境:pyecharts库,echarts-countries-pypkg,echarts-china-provinces-pypkg,echarts-china-cities-pypkg

数据:2018年4月16号的全国各地最高最低和天气类型的数据——2018-4-16.json(爬虫爬的)

代码:天气数据爬虫代码,图表绘制代码 代码地址:https://github.com/goodloving/pyecharts.git(py文件)

一、公共属性

1、标题栏的属性:一般在实例化(初始化)类型时给与,如bar = Bar(“大标题”,“副标题”,···各种属性···)

title_color = “颜色”:标题颜色,可以是‘red'或者‘#0000'

title_pos = ‘位置':标题位置,如‘center',‘left'···

width = 1200:图表的宽

height = 800:图表的高

background_color = "颜色":图表的背景色

·····

2、标签栏的属性:如bar.add(“标签”,x,values,···属性···)

'mark_'类,通个'mark_'显示,如 mark_point['max', 'min', 'average']:标出最大最小和平均值的点,

mark_point_textcolor,mark_line_symbolsize·····

'legend_'类,如legend_pos=‘left':标签的位置

'is_'类,如is_label_show=True:显示每个点的值,is_datazoom_show=True:实现移动控制x轴的数量

is_convert = True:x,y轴是否调换

eg:

bar = pyecharts.Bar("全国各地最高气温", "2018-4-18", title_color='red', title_pos='right', width=1400, height=700, background_color='#404a59')
bar.add("最高气温", cities, highs, mark_point=['max', 'min', 'average'], is_label_show=True, is_datazoom_show=True, legend_pos='left')
bar.render('Bar-High.html')

python的pyecharts绘制各种图表详细(附代码)

3、Geo,Map无法显示底图

pyecharts v0.3.2以后,pyecharts 将不再自带地图 js 文件。如用户需要用到地图图表,可自行安装对应的地图文件包。

地图文件被分成了三个 Python 包,分别为:
全球国家地图: echarts-countries-pypkg (1.9MB)
中国省级地图: echarts-china-provinces-pypkg (730KB)

中国市级地图: echarts-china-cities-pypkg (3.8MB)

(1)pycharm直接在设置里面搜索安装这三个库

(2)pip安装

pip install echarts-countries-pypkg

pip install echarts-china-provinces-pypkg

pip install echarts-china-cities-pypkg

二、各种图表

1.柱状图/条形图——Bar

bar = pyecharts.Bar("全国各地最高最低气温", "2018-4-18", title_pos='right', title_color='blue', width=1400, height=700,background_color='white')
bar.add("最高气温", cities, highs, mark_point=['max'], legend_text_color='red', is_datazoom_show=True)
bar.add("最低气温", cities, lows, mark_line=['min'], legend_text_color='blue' )


bar.render('Bar-High-Low.html')

python的pyecharts绘制各种图表详细(附代码)

2、散点图——EffectScatter

es = pyecharts.EffectScatter("最低气温动态散点图", "2018-4-16", title_pos='right', title_color='blue', width=1400, height=700, background_color='white')
es.add("最低温度", range(0, len(cities)), lows, legend_pos='center', legend_text_color='blue',symbol_size=10, effect_period=3, effect_scale=3.5, symbol='pin',is_datazoom_show=True,is_label_show=True)


es.render("EffectScatter-low.html")

python的pyecharts绘制各种图表详细(附代码)

3、漏斗与——Funnel

fl = pyecharts.Funnel("最高气温漏斗图", "2018-40-16", title_pos='left', width=1400, height=700)
fl.add("最低气温", cities[:15], lows[:15], is_label_show=True, label_pos='inside', label_text_color='white')


fl.render("Funnel-low.html")

python的pyecharts绘制各种图表详细(附代码)

4、仪表盘——Guage

gu = pyecharts.Gauge("仪表盘图")
gu.add("指标", "达标", 80)


gu.render("Guage-eg.html")

python的pyecharts绘制各种图表详细(附代码)

5、地理坐标图——Geo

geo = pyecharts.Geo("最高气温地理坐标系图", '2018-4-16', title_color='#fff', title_pos='center', width=1200, height=600, background_color='#404a95')
geo.add("最高气温", cities, highs, is_visualmap=True, visual_range=[0, 40], visual_text_color='#fff', symbol_size=5, legend_pos='right',is_geo_effect_show=True)


geo.render("Geo-Low.html")

python的pyecharts绘制各种图表详细(附代码)

6、关系图——Graph(略)

7、折线/面积图——Line

line = pyecharts.Line("气温变化折线图", '2018-4-16', width=1200, height=600)
line.add("最高气温", cities, highs, mark_point=['average'], is_datazoom_show=True)
line.add("最低气温", cities, lows, mark_line=['average'], is_smooth=True)


line.render('Line-High-Low.html')

python的pyecharts绘制各种图表详细(附代码)

line = pyecharts.Line("气温变化折线图", '2018-4-16', width=1200, height=600)
line.add("最高气温", cities, highs, mark_point=['average'], is_datazoom_show=True, is_fill=True, line_opacity=0.2, area_opacity=0.4)
line.add("最低气温", cities, lows, mark_line=['average'], is_smooth=True, is_fill=True, area_color="#000", area_opacity=0.5)


line.render('Area-High-Low.html')

python的pyecharts绘制各种图表详细(附代码)

8、水滴球——Liquid

lq = pyecharts.Liquid("水滴球")
lq.add("Liquid", [0.8, 0.5, 0.2], is_liquid_outline_show=False, is_liquid_animation=True)


lq.render("LiQuid.html")

python的pyecharts绘制各种图表详细(附代码)

9、地图——Map

a_city = []
for i in cities:
a_city.append(i + '市')
map = pyecharts.Map("湖北最低气温", width=1200, height=600)
map.add("最低气温", a_city, lows, maptype='湖北', is_visualmap=True, visual_text_color='#000', visual_range= [-15, 20])


map.render("Map-low.html")

python的pyecharts绘制各种图表详细(附代码)

value = [95.1, 23.2, 43.3, 66.4, 88.5]

attr= ["China", "Canada", "Brazil", "Russia", "United States"]

map = Map("世界地图示例", width=1200, height=600)

map.add("", attr, value, maptype="world", is_visualmap=True, visual_text_color='#000')

map.render('Map-World.html')

python的pyecharts绘制各种图表详细(附代码)

10、平行坐标图——Parallel

parallel = pyecharts.Parallel("高低温度的平行坐标系图", '2018-4-16', width=1200, height=600)
parallel.config(cities[:20])
parallel.add("高低温", [highs[:20], lows[:20]], is_random=True)


parallel.render('Parallel-High-Low.html')

python的pyecharts绘制各种图表详细(附代码)

11、饼图——Pie

sun = 0
cloud = 0
lit_rain = 0
mit_rain = 0
sail = 0
shadom = 0
z_rain = 0
th_rain = 0
for i in types:
if i == '晴':
sun += 1
elif i == '多云':
cloud += 1
elif i == '小雨':
lit_rain += 1
elif i == '中雨':
mit_rain += 1
elif i == '阴':
shadom += 1
elif i == '阵雨':
z_rain += 1
elif i == '雷阵雨':
th_rain += 1
elif i == '扬沙':
sail += 1
pie = pyecharts.Pie("全国天气类型比例", '2018-4-16')
pie.add('天气类型', weather, [mit_rain, lit_rain, sail, sun, th_rain, cloud, shadom, z_rain], is_label_show=True)


pie.render('Pie-weather.html')

python的pyecharts绘制各种图表详细(附代码)

修改:

pie = pyecharts.Pie("全国天气类型比例", '2018-4-16', title_pos='center')
pie.add('天气类型', weather, [mit_rain, lit_rain, sail, sun, th_rain, cloud, shadom, z_rain], is_label_show=True, legend_pos='left', label_text_color=None, legend_orient='vertical', radius=[30, 75])


pie.render('Pie-weather.html')

python的pyecharts绘制各种图表详细(附代码)

pie镶嵌:

center -> list

饼图的中心(圆心)坐标,数组的第一项是横坐标,第二项是纵坐标,默认为 [50, 50]默认设置成百分比,设置成百分比时第一项是相对于容器宽度,第二项是相对于容器高度

rosetype -> str

是否展示成南丁格尔图,通过半径区分数据大小,有'radius'和'area'两种模式。默认为'radius'radius:扇区圆心角展现数据的百分比,半径展现数据的大小area:所有扇区圆心角相同,仅通过半径展现数据大小

pie = pyecharts.Pie("全国天气类型比例", '2018-4-16')
pie.add('', weather, [mit_rain, lit_rain, sail, sun, th_rain, cloud, shadom, z_rain], is_label_show=True, label_text_color=None, legend_orient='vertical', radius=[40, 50], center=[50, 50])
pie.add('', ['中雨', '小雨', '扬沙', '晴'], [lit_rain, mit_rain, sun, sail], radius=[10, 35], center=[50, 50], rosetype='area')


pie.render('Pie-weather.html')

python的pyecharts绘制各种图表详细(附代码)

至此,pyecharts的大多数图标的绘制我们都可以实现了,更多知识可以查看下面链接

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
自己编程中遇到的Python错误和解决方法汇总整理
Jun 03 Python
python 多线程实现检测服务器在线情况
Nov 25 Python
Python的string模块中的Template类字符串模板用法
Jun 27 Python
python中numpy包使用教程之数组和相关操作详解
Jul 30 Python
在python3环境下的Django中使用MySQL数据库的实例
Aug 29 Python
Python基于PyGraphics包实现图片截取功能的方法
Dec 21 Python
python生成ppt的方法
Jun 07 Python
Python查找数组中数值和下标相等的元素示例【二分查找】
Feb 13 Python
python+pygame实现坦克大战小游戏的示例代码(可以自定义子弹速度)
Aug 11 Python
Python selenium如何打包静态网页并下载
Aug 12 Python
C站最全Python标准库总结,你想要的都在这里
Jul 03 Python
Python游戏开发实例之graphics实现AI五子棋
Nov 01 Python
python OpenCV GrabCut使用实例解析
Nov 11 #Python
Python上下文管理器用法及实例解析
Nov 11 #Python
Django 请求Request的具体使用方法
Nov 11 #Python
浅谈Python类中的self到底是干啥的
Nov 11 #Python
python 调试冷知识(小结)
Nov 11 #Python
通过 Django Pagination 实现简单分页功能
Nov 11 #Python
python机器学习实现决策树
Nov 11 #Python
You might like
php 格式化数字的时候注意数字的范围
2010/04/13 PHP
PHP连接SQLServer2005 的问题解决方法
2010/07/19 PHP
php版阿里云OSS图片上传类详解
2016/12/01 PHP
PHP判断访客是否手机端(移动端浏览器)访问的方法总结【4种方法】
2019/03/27 PHP
PHP常用正则表达式精选(推荐)
2019/05/28 PHP
写出更好的JavaScript程序之undefined篇(中)
2009/11/23 Javascript
JavaScript类和继承 constructor属性
2010/03/04 Javascript
JQuery 插件制作实践 xMarquee插件V1.0
2010/04/02 Javascript
理解Javascript_01_理解内存分配原理分析
2010/10/11 Javascript
博客侧边栏模块跟随滚动条滑动固定效果的实现方法(js+jquery等)
2013/03/24 Javascript
Js动态添加复选框Checkbox的实例方法
2013/04/08 Javascript
一款jquery特效编写的大度宽屏焦点图切换特效的实例代码
2013/08/05 Javascript
分享几种比较简单实用的JavaScript tabel切换
2015/12/31 Javascript
JS仿JQuery选择器功能
2017/03/08 Javascript
微信小程序项目实践之九宫格实现及item跳转功能
2018/07/19 Javascript
基于bootstrap页面渲染的问题解决方法
2018/08/09 Javascript
浅析js中mvvm模式实现的原理
2018/10/06 Javascript
微信小程序实现左侧滑栏过程解析
2019/08/26 Javascript
jquery 键盘事件 keypress() keydown() keyup()用法总结
2019/10/23 jQuery
在Vue项目中,防止页面被缩放和放大示例
2019/10/28 Javascript
微信小程序修改数组长度的问题的解决
2019/12/17 Javascript
Python多线程编程(三):threading.Thread类的重要函数和方法
2015/04/05 Python
Python函数式编程
2017/07/20 Python
使用python爬虫实现网络股票信息爬取的demo
2018/01/05 Python
Python wxpython模块响应鼠标拖动事件操作示例
2018/08/23 Python
解决python文件双击运行秒退的问题
2019/06/24 Python
使用OpenCV circle函数图像上画圆的示例代码
2019/12/27 Python
python 利用百度API识别图片文字(多线程版)
2020/12/14 Python
plt.figure()参数使用详解及运行演示
2021/01/08 Python
TCP/IP模型的分界线
2012/12/01 面试题
承诺书样本
2014/08/30 职场文书
幼儿园见习报告范文
2014/10/30 职场文书
施工安全保证书
2015/05/09 职场文书
小兵张嘎观后感
2015/06/03 职场文书
学子宴致辞大全
2015/07/27 职场文书
Python+tkinter实现高清图片保存
2022/03/13 Python