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 相关文章推荐
django之常用命令详解
Jun 30 Python
开源软件包和环境管理系统Anaconda的安装使用
Sep 04 Python
Python之读取TXT文件的方法小结
Apr 27 Python
Python中fnmatch模块的使用详情
Nov 30 Python
Python实现的简单线性回归算法实例分析
Dec 26 Python
python实现ip代理池功能示例
Jul 05 Python
python并发爬虫实用工具tomorrow实用解析
Sep 25 Python
python实时监控logstash日志代码
Apr 27 Python
Python使用itcaht库实现微信自动收发消息功能
Jul 13 Python
Matplotlib配色之Colormap详解
Jan 05 Python
Python LMDB库的使用示例
Feb 14 Python
Python anaconda安装库命令详解
Oct 16 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
一个简洁的多级别论坛
2006/10/09 PHP
PHP数组循环操作详细介绍 附实例代码
2013/02/03 PHP
PHP中的Streams详细介绍
2014/11/12 PHP
PHP导出Excel实例讲解
2016/01/24 PHP
PHP语言对接抖音快手小红书视频/图片去水印API接口源码
2020/08/11 PHP
关于viewport,Ext.panel和Ext.form.panel的关系
2009/05/07 Javascript
理解JAVASCRIPT中hasOwnProperty()的作用
2013/06/05 Javascript
js中parseInt函数浅谈
2013/07/31 Javascript
Javascript 拖拽的一些简单的应用(逐行分析代码,让你轻松了拖拽的原理)
2015/01/23 Javascript
Bootstrap框架动态生成Web页面文章内目录的方法
2016/05/12 Javascript
微信小程序 安全包括(框架、功能模块、账户使用)详解
2017/01/16 Javascript
js实现延迟加载的几种方法
2017/04/24 Javascript
Three.js 再探 - 写一个微信跳一跳极简版游戏
2018/01/04 Javascript
webpack组织模块打包Library的原理及实现
2018/03/10 Javascript
JavaScript实现图片懒加载的方法分析
2018/07/05 Javascript
vue中 this.$set的用法详解
2019/09/06 Javascript
微信小程序获取当前位置和城市名
2019/11/13 Javascript
用Golang运行JavaScript的实现示例
2019/11/25 Javascript
vue-router定义元信息meta操作
2020/12/07 Vue.js
vue.js watch经常失效的场景与解决方案
2021/01/07 Vue.js
[10:24]郎朗助力完美“圣”典,天籁交织奏响序曲
2016/12/18 DOTA
[04:15]DOTA2-DPC中国联赛 正赛 Ehome vs Aster 选手采访
2021/03/11 DOTA
忘记ftp密码使用python ftplib库暴力破解密码的方法示例
2014/01/22 Python
python中实现定制类的特殊方法总结
2014/09/28 Python
python中使用序列的方法
2015/08/03 Python
Python 专题三 字符串的基础知识
2017/03/19 Python
transform python环境快速配置方法
2018/09/27 Python
用html5实现语音搜索框的方法
2014/03/18 HTML / CSS
Chain Reaction Cycles芬兰:世界上最大的在线自行车商店
2017/12/06 全球购物
大唐电信科技股份有限公司java工程师面试经历
2016/12/09 面试题
员工培训心得体会
2013/12/30 职场文书
酒店销售主管岗位职责
2014/01/04 职场文书
文科生自我鉴定
2014/02/15 职场文书
乡镇交通安全实施方案
2014/03/29 职场文书
2016年暑期见闻作文
2015/11/25 职场文书
装修安全责任协议书
2016/03/22 职场文书