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 相关文章推荐
CentOS中使用virtualenv搭建python3环境
Jun 08 Python
Windows上配置Emacs来开发Python及用Python扩展Emacs
Nov 20 Python
Python中装饰器高级用法详解
Dec 25 Python
pygame游戏之旅 添加游戏介绍
Nov 20 Python
python实现向微信用户发送每日一句 python实现微信聊天机器人
Mar 27 Python
Python 字符串类型列表转换成真正列表类型过程解析
Aug 26 Python
python图像处理模块Pillow的学习详解
Oct 09 Python
python定时任务 sched模块用法实例
Nov 04 Python
Python数据可视化处理库PyEcharts柱状图,饼图,线性图,词云图常用实例详解
Feb 10 Python
用python打开摄像头并把图像传回qq邮箱(Pyinstaller打包)
May 17 Python
python 实现压缩和解压缩的示例
Sep 22 Python
Golang Web 框架Iris安装部署
Aug 14 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
用PHP读取和编写XML DOM的实现代码
2011/02/03 PHP
php设计模式小结
2013/02/15 PHP
浅析get与post的一些特殊情况
2014/07/28 PHP
PHP双向链表定义与用法示例
2018/01/31 PHP
PHP基于redis计数器类定义与用法示例
2018/02/08 PHP
thinkPHP5框架实现基于ajax的分页功能示例
2018/06/12 PHP
php如何利用pecl安装mongodb扩展详解
2019/01/09 PHP
Laravel5.1 框架控制器基础用法实例分析
2020/01/04 PHP
alert和confirm功能介绍
2014/05/21 Javascript
超炫的jquery仿flash导航栏特效
2014/11/11 Javascript
js实现仿百度瀑布流的方法
2015/02/05 Javascript
javascript计时器详解
2015/02/28 Javascript
深入理解JQuery循环绑定事件
2016/06/02 Javascript
vue2.X组件学习心得(新手必看篇)
2017/07/05 Javascript
基于jstree使用AJAX请求获取数据形成树
2017/08/29 Javascript
webpack4 SplitChunks实现代码分隔详解
2019/05/23 Javascript
node.js 微信开发之定时获取access_token
2020/02/07 Javascript
Vue ElementUI实现:限制输入框只能输入正整数的问题
2020/07/31 Javascript
微信小程序canvas动态时钟
2020/10/22 Javascript
[02:10]三分钟回顾完美世界城市挑战赛
2019/01/24 DOTA
Python使用getpass库读取密码的示例
2017/10/10 Python
Python中xrange与yield的用法实例分析
2017/12/26 Python
Python爬虫_城市公交、地铁站点和线路数据采集实例
2018/01/10 Python
Python json模块dumps、loads操作示例
2018/09/06 Python
Python 实现国产SM3加密算法的示例代码
2020/09/21 Python
HTML5里的placeholder属性使用实例和美化显示效果的方法
2014/04/23 HTML / CSS
JBL澳大利亚官方商店:扬声器、耳机和音响系统
2018/05/24 全球购物
Farfetch巴西官网:奢侈品牌时尚购物平台
2020/10/19 全球购物
Java面试中常遇到的问题,也是需要注意的几点
2013/08/30 面试题
2014庆六一活动方案
2014/03/02 职场文书
年度评优评先方案
2014/06/03 职场文书
小学生迎国庆演讲稿
2014/09/05 职场文书
2015年“我们的节日·重阳节”活动总结
2015/07/29 职场文书
Pytorch反向传播中的细节-计算梯度时的默认累加操作
2021/06/05 Python
python lambda 表达式形式分析
2022/04/03 Python
vue/cli 配置动态代理无需重启服务的方法
2022/05/20 Vue.js