Python数据可视化处理库PyEcharts柱状图,饼图,线性图,词云图常用实例详解


Posted in Python onFebruary 10, 2020

python可以在处理各种数据时,如果可以将这些数据,利用图表将其可视化,这样在分析处理起来,将更加直观、清晰,以下是 利用 PyEcharts 常用图表的可视化Demo, 开发环境 python3

柱状图

基本柱状图

from pyecharts import Bar
# 基本柱状图
bar = Bar("基本柱状图", "副标题")
bar.use_theme('dark') # 暗黑色主题
bar.add('真实成本',  # label
    ["1月", "2月", "3月", "4月", "5月", "6月"],  # 横坐标
    [5, 20, 36, 10, 75, 90],    # 纵坐标
    is_more_utils=True)  # 设置最右侧工具栏
# bar.show_config()    # 调试输出pyecharts的js的配置信息
bar.render('bar_demo.html') # 生成html文件

Python数据可视化处理库PyEcharts柱状图,饼图,线性图,词云图常用实例详解

堆叠柱状图

# 堆叠柱状图
x_attr = ["1月", "2月", "3月", "4月", "5月", "6月"]
data1 = [5, 20, 36, 10, 75, 90]
data2 = [10, 25, 8, 60, 20, 80]
bar1 = Bar('柱状信息堆叠图')
bar1.add('商家1', x_attr, data1, is_stack=True)  # is_stack=True 表示堆叠在一起
bar1.add('商家2', x_attr, data2, is_stack=True)
bar1.render('bar1_demo.html')

Python数据可视化处理库PyEcharts柱状图,饼图,线性图,词云图常用实例详解

并列柱形图

# 并列柱形图
bar2 = Bar('并列柱形图', '标记线和标记示例')
bar2.add('商家1', x_attr, data1, mark_point=['average']) # 标记点:商家1的平均值
bar2.add('商家2', x_attr, data2, mark_line=['min', 'max']) # 标记线:商家2的最小/大值
bar2.render('bar2_demo.html')

Python数据可视化处理库PyEcharts柱状图,饼图,线性图,词云图常用实例详解

横向并列柱形图

# 横向并列柱形图

# 横向并列柱形图
bar3 = Bar('横向并列柱形图', 'X轴与Y轴交换')
bar3.add('商家1', x_attr, data1)
bar3.add('商家2', x_attr, data2, is_convert=True) # is_convert=True :X轴与Y轴交换
bar3.render('bar3_demo.html')

Python数据可视化处理库PyEcharts柱状图,饼图,线性图,词云图常用实例详解

以上相关柱状图完整代码bar_demo.py

from pyecharts import Bar
# 基本柱状图
bar = Bar("基本柱状图", "副标题")
bar.use_theme('dark') # 暗黑色主题
bar.add('真实成本',  # label
    ["1月", "2月", "3月", "4月", "5月", "6月"],  # 横坐标
    [5, 20, 36, 10, 75, 90],    # 纵坐标
    is_more_utils=True)  # 设置最右侧工具栏

# bar.show_config()    # 调试输出pyecharts的js的配置信息
bar.render('bar_demo.html') # 生成html文件


# 堆叠柱状图
x_attr = ["1月", "2月", "3月", "4月", "5月", "6月"]
data1 = [5, 20, 36, 10, 75, 90]
data2 = [10, 25, 8, 60, 20, 80]
bar1 = Bar('柱状信息堆叠图')
bar1.add('商家1', x_attr, data1, is_stack=True)  # is_stack=True 表示堆叠在一起
bar1.add('商家2', x_attr, data2, is_stack=True)
bar1.render('bar1_demo.html')


# 并列柱形图
bar2 = Bar('并列柱形图', '标记线和标记示例')
bar2.add('商家1', x_attr, data1, mark_point=['average']) # 标记点:商家1的平均值
bar2.add('商家2', x_attr, data2, mark_line=['min', 'max']) # 标记线:商家2的最小/大值
bar2.render('bar2_demo.html')

# 横向并列柱形图
bar3 = Bar('横向并列柱形图', 'X轴与Y轴交换')
bar3.add('商家1', x_attr, data1)
bar3.add('商家2', x_attr, data2, is_convert=True) # is_convert=True :X轴与Y轴交换
bar3.render('bar3_demo.html')

折线图、饼图、词云图

导入模块 与 基础数据

from pyecharts import Line
from pyecharts import Pie
from pyecharts import WordCloud
from pyecharts import EffectScatter, Overlap

x_attr = ["1月", "2月", "3月", "4月", "5月", "6月"]
data1 = [5, 20, 36, 10, 75, 90]
data2 = [10, 25, 8, 60, 20, 80]

基础折线示例图

# 折线示例图
line = Line("折线示例图")
line.add('商家1', x_attr, data1, mark_point=['average'])
line.add('商家2', x_attr, data2, is_smooth=True, mark_line=['max', 'average'])
line.render('line.demo.html')

Python数据可视化处理库PyEcharts柱状图,饼图,线性图,词云图常用实例详解

折线面积图

# 折线面积图
line = Line('折线面积示例图')
line.add('商家1', x_attr, data1, is_fill=True,line_opacity=0.2, area_opacity=0.4, symbol=None)
line.add('商家2', x_attr, data2, line_color='#000', area_opacity=0.3, is_smooth=True)
line.render('line2_demo.html')

Python数据可视化处理库PyEcharts柱状图,饼图,线性图,词云图常用实例详解

饼图

# 饼图
pie = Pie('饼图')
pie.add('', x_attr, data1, is_label_show=True)
pie.render('pie_demo.html')

Python数据可视化处理库PyEcharts柱状图,饼图,线性图,词云图常用实例详解

词云图

# 词云图
name = [
    'Though', 'the answer', 'this question',
    'may at first', 'seem to border', 'on the',
    'absurd', 'reflection', 'will show', 'that there',
    'is a', 'good deal', 'more in', 'it than meets', 'the eye'
    ]
value = [10000, 6189, 4556, 2356, 2233,
     1895, 1456, 1255, 981, 875,
     542, 462, 361, 265, 125]

worldcloud = WordCloud(width=1300, height=620)
worldcloud.add('词云', name, value, word_size_range=[20, 100])
worldcloud.render('worldcloud.html')

Python数据可视化处理库PyEcharts柱状图,饼图,线性图,词云图常用实例详解

线性闪烁图 —组合图

# 线性闪烁图
line2 = Line('线性闪烁图')
line2.add('line', x_attr, data1, is_random=True)

es = EffectScatter()
es.add('es', x_attr, data1, effect_scale=8) # 闪烁
overlop = Overlap()
overlop.add(line2)   # 必须先添加line 再添加 es
overlop.add(es)
overlop.render('line-es.html')

Python数据可视化处理库PyEcharts柱状图,饼图,线性图,词云图常用实例详解

以上相关图完整代码line_pie_demo.py

from pyecharts import Line
from pyecharts import Pie
from pyecharts import WordCloud
from pyecharts import EffectScatter, Overlap

x_attr = ["1月", "2月", "3月", "4月", "5月", "6月"]
data1 = [5, 20, 36, 10, 75, 90]
data2 = [10, 25, 8, 60, 20, 80]

# 折线示例图
line = Line("折线示例图")
line.add('商家1', x_attr, data1, mark_point=['average'])
line.add('商家2', x_attr, data2, is_smooth=True, mark_line=['max', 'average'])
line.render('line.demo.html')

# 折线面积图
line = Line('折线面积示例图')
line.add('商家1', x_attr, data1, is_fill=True,line_opacity=0.2, area_opacity=0.4, symbol=None)
line.add('商家2', x_attr, data2, line_color='#000', area_opacity=0.3, is_smooth=True)
line.render('line2_demo.html')

# 饼图
pie = Pie('饼图')
pie.add('', x_attr, data1, is_label_show=True)
pie.render('pie_demo.html')

# 词云图
name = [
    'Python', 'the answer', 'this question',
    'may at first', 'seem to border', 'on the',
    'absurd', 'reflection', 'will show', 'that there',
    'is a', 'good deal', 'more in', 'it than meets', 'the eye'
    ]
value = [10000, 6189, 4556, 2356, 2233,
     1895, 1456, 1255, 981, 875,
     542, 462, 361, 265, 125]

worldcloud = WordCloud(width=1300, height=620)
worldcloud.add('词云', name, value, word_size_range=[20, 100])
worldcloud.render('worldcloud.html')

# 线性闪烁图
line2 = Line('线性闪烁图')
line2.add('line', x_attr, data1, is_random=True)

es = EffectScatter()
es.add('es', x_attr, data1, effect_scale=8) # 闪烁
overlop = Overlap()
overlop.add(line2)   # 必须先添加line 再添加 es
overlop.add(es)
overlop.render('line-es.html')

更多关于Python数据可视化处理库PyEcharts使用方法与实例请查看下面的相关链接

Python 相关文章推荐
Python httplib模块使用实例
Apr 11 Python
Django imgareaselect手动剪切头像实现方法
May 26 Python
Python中import导入上一级目录模块及循环import问题的解决
Jun 04 Python
Python如何快速上手? 快速掌握一门新语言的方法
Nov 14 Python
anaconda如何查看并管理python环境
Jul 05 Python
解决Django连接db遇到的问题
Aug 29 Python
python序列化与数据持久化实例详解
Dec 20 Python
Pytorch实现LSTM和GRU示例
Jan 14 Python
python 解压、复制、删除 文件的实例代码
Feb 26 Python
python3中sorted函数里cmp参数改变详解
Mar 12 Python
使用pycharm运行flask应用程序的详细教程
Jun 07 Python
PYTHON基于Pyecharts绘制常见的直角坐标系图表
Apr 28 Python
Python的pygame安装教程详解
Feb 10 #Python
windows下python安装pip方法详解
Feb 10 #Python
python3.6连接mysql数据库及增删改查操作详解
Feb 10 #Python
Django中modelform组件实例用法总结
Feb 10 #Python
python爬虫库scrapy简单使用实例详解
Feb 10 #Python
tensorflow 实现从checkpoint中获取graph信息
Feb 10 #Python
Python3 集合set入门基础
Feb 10 #Python
You might like
手冲咖啡应该是现代精品咖啡店的必备选项吗?
2021/03/03 冲泡冲煮
PHP 替换模板变量实现步骤
2009/08/24 PHP
php加密之discuz内容经典加密方式实例详解
2017/02/04 PHP
Prototype Number对象 学习
2009/07/19 Javascript
jQuery 白痴级入门教程
2009/11/11 Javascript
javascript调试说明
2010/06/07 Javascript
javascript (用setTimeout而非setInterval)
2011/12/28 Javascript
JS创建自定义表格具体实现
2014/02/11 Javascript
JavaScript中的变量作用域介绍
2014/12/31 Javascript
纯javascript实现的小游戏《Flappy Pig》实例
2015/07/27 Javascript
JavaScript构建自己的对象示例
2016/11/29 Javascript
jQuery中值得注意的trigger方法浅析
2016/12/12 Javascript
jQuery实现的分页功能示例
2017/01/22 Javascript
从对象列表中获取一个对象的方法,依据关键字和值
2017/09/20 Javascript
JS设计模式之访问者模式定义与用法分析
2018/02/05 Javascript
Django+Vue跨域环境配置详解
2018/07/06 Javascript
Vue引用Swiper4插件无法重写分页器样式的解决方法
2018/09/27 Javascript
JS桶排序的简单理解与实现方法示例
2019/11/25 Javascript
[49:27]2018DOTA2亚洲邀请赛 4.4 淘汰赛 TNC vs VG 第一场
2018/04/05 DOTA
Python+Pandas 获取数据库并加入DataFrame的实例
2018/07/25 Python
Python 中的lambda函数介绍
2018/10/10 Python
Python3 max()函数基础用法
2019/02/19 Python
python使用adbapi实现MySQL数据库的异步存储
2019/03/19 Python
Python使用Pickle模块进行数据保存和读取的讲解
2019/04/09 Python
django之对FileField字段的upload_to的设定方法
2019/07/28 Python
通过 Django Pagination 实现简单分页功能
2019/11/11 Python
python解析多层json操作示例
2019/12/30 Python
纯HTML5+CSS3制作图片旋转
2016/01/12 HTML / CSS
Mountain Warehouse德国官网:英国户外零售商
2019/08/11 全球购物
英国最受欢迎的母婴精品品牌:JoJo Maman BéBé
2021/02/17 全球购物
护理专业学生的求职信范文
2013/12/11 职场文书
走进敬老院活动总结
2014/07/10 职场文书
党员自我评价2015
2015/03/03 职场文书
开天辟地观后感
2015/06/09 职场文书
信用卡收入证明范本
2015/06/12 职场文书
MySQL 发生同步延迟时Seconds_Behind_Master还为0的原因
2021/06/21 MySQL