前言
在对数据的掌握及分析变得愈加重要的当今时代,数据可视化作为提高用户对数据的理解程度,创新架构,增进体验的重要一环,一向富有表现力的Python语言应当可以发挥更大作用,优秀的pyechart第三方库即在这样的背景下诞生。
1pyecharts库简介
为了更好理解pyechart的功能,我先为大家对Echarts进行介绍:
![v2-8739f95ff6b0d3c583c3a9df466a8c12_b.jpg](http://img-03.proxy.5ce.com/view/image?&type=2&guid=667bf314-0130-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-8739f95ff6b0d3c583c3a9df466a8c12_b.jpg)
Echarts是一个由百度开源的商业级数据图表,它是一个纯JavaScript的图表库,可以为用户提供直观生动,可交互,可高度个性化定制的数据可视化图表,赋予了用户对数据进行挖掘整合的能力。
我们即可定义:pyecharts库是一个用于生成 Echarts 图表的类库。
2pyecharts库用法
Part 1安装方法
pip 安装
# 安装 v1 以上版本
$ pip install pyecharts -U
# 如果需要安装 0.5.11 版本的开发者,可以使用
# pip install pyecharts==0.5.11
源码安装
# 安装 v1 以上版本
$ git clone https://github.com/pyecharts/pyecharts.git
# 如果需要安装 0.5.11 版本,请使用 git clone https://github.com/pyecharts/pyecharts.git -b v05x
$ cd pyecharts
$ pip install -r requirements.txt
$ python setup.py install
Part 2图表举例
柱形图绘制
皮皮侠走访(暗访)了一下大家的日常开销,绘制了占小伙伴们支出大头的几项花费的平均数额的柱形图,并使用dict进行配置,代码如下:
from pyecharts import options as opts
from pyecharts.charts import Bar, Page
from pyecharts.globals import ThemeType
def bar_base_dict_config() -> Bar:
c = (
Bar({"theme": ThemeType.MACARONS})
.add_xaxis(["吃喝", "杂物", "交通", "书费", "游玩", "花呗", "网购"])
.add_yaxis("旁友A", [600, 20,30, 50, 100, 125, 200])
.add_yaxis("旁友B", [650,25,25, 80, 150, 145, 100])
.set_global_opts(
title_opts={"text": "同学们的生活开支", "subtext": "通过 dict 进行配置"}
)
)
return c
bar_base_dict_config().render()
![v2-4a31fae5882b283fcd5d919aaba4d2df_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=667bf314-0130-eb11-8da9-e4434bdf6706&url=https://pic4.zhimg.com/v2-4a31fae5882b283fcd5d919aaba4d2df_b.jpg)
折线图绘制
皮皮虾仁侠调查了OTA平台上由成都飞往天涯海角北京城和大昆明最近六天的航班价格走势(最低价格),绘制成折线图如下:
import pyecharts.options as opts
from pyecharts.charts import Line
def line_base() -> Line:
attr = ["10.13", "10.14", "10.15", "10.16" , "10.17" , "
10.18"]
v1 = [1650, 1700, 1461, 1350, 1100, 1500]
v2 = [1020, 575, 400, 350, 330, 480]
c = (
Line()
.add_xaxis(attr)
.add_yaxis("成都fly北京", v1)
.add_yaxis("成都fly昆明", v2)
.set_global_opts(title_opts=opts.TitleOpts(title="航班价格折线图"))
)
return c
m=line_base()
m.render()
![v2-53a154707bbb01592e0e744e06c5d98f_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=667bf314-0130-eb11-8da9-e4434bdf6706&url=https://pic4.zhimg.com/v2-53a154707bbb01592e0e744e06c5d98f_b.jpg)
温馨(扎心)提示:然鹅你只能老老实实待在位于成都市一环路南一段24号 or 成都市人民南路三段17号 or 成都市双流区川大路的四川大学。
饼图绘制
下面让我们看看当代川大大学生的时间都去哪了呢?饼图之“这一天天的”时间分配图代码和图表如下:
from pyecharts import options as opts
from pyecharts.charts import Pie
from pyecharts.faker import Collector, Faker
def pie_set_colors() -> Pie:
c = (
Pie()
.add("", [list(z) for z in zip(['上课','睡眠','餐饮','娱乐','聊天学习','健身'], [4,8,3,3,2,1])])
.set_colors(["blue", "green", "yellow", "red", "pink","orange"])
.set_global_opts(title_opts=opts.TitleOpts(title="这一天天的"))
.set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}"))
)
return c
pie_set_colors().render()
![v2-27c5d791937ccc6dd898e3ddc4c09b72_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=667bf314-0130-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-27c5d791937ccc6dd898e3ddc4c09b72_b.jpg)
温馨提示:
1) 第三方库的开发者在更新库的过程中可能会做出某些调整,当版本不同时,代码的适用性是不同的,所以要及时关注第三方库的变化,及时更新。
对第三方库里我们不确定的类内的某个方法的使用,一般作者会给出说明文档,我们可以通过先查看类包括的方法,再查看方法的使用说明来学习,操作如下:(以上例Pie图为例)
Part 3总结
1.导入相关图表包
2.进行图表的基础设置,创建图表对象
3.利用add()方法进行数据输入与图表设置(可以使用print_echarts_options()来输出所有可配置项)
4.利用render()方法来进行图表保存
3pyecharts库展示
![v2-9ab84739a2b4c23aeef7d9df40f1e6e0_b.gif](http://img-02.proxy.5ce.com/view/image?&type=2&guid=667bf314-0130-eb11-8da9-e4434bdf6706&url=https://pic1.zhimg.com/v2-9ab84739a2b4c23aeef7d9df40f1e6e0_b.gif)
![v2-fe9b73927ec77b881264a6c3902037f6_b.gif](http://img-01.proxy.5ce.com/view/image?&type=2&guid=667bf314-0130-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-fe9b73927ec77b881264a6c3902037f6_b.gif)
![v2-72300a570cdcb6eb1bc427071cdf739e_b.jpg](http://img-03.proxy.5ce.com/view/image?&type=2&guid=667bf314-0130-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-72300a570cdcb6eb1bc427071cdf739e_b.jpg)
![v2-68d4c2abbf612b1dda3998d4be2dcdc7_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=667bf314-0130-eb11-8da9-e4434bdf6706&url=https://pic4.zhimg.com/v2-68d4c2abbf612b1dda3998d4be2dcdc7_b.jpg)
![v2-11a04c193228d4bd73d236f4b8729e46_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=667bf314-0130-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-11a04c193228d4bd73d236f4b8729e46_b.jpg)
到这里,今天的推介内容已全部结束,总的来说,pyechart库作为优秀的python第三方库,为Echarts图表库与python建立了良好沟通。当然,python可实现的功能还有很多,期待大家的不断学习探索与python迸发出更大的火花吧!
在此感谢pyecharts三位优秀的开发者:
chenjiandongx
jaska
kinegratii
长按,关注数据皮皮侠
http://weixin.qq.com/r/2SgwKM-ESJI3rYtL933L (二维码自动识别)