小白学 Python 数据剖析(20):pyecharts 概述

小白学 Python 数据剖析(20):pyecharts 概述

人生苦短,我用 Python

前文传送门:

小白学 Python 数据剖析(1):数据剖析基础

小白学 Python 数据剖析(2):Pandas (一)概述

小白学 Python 数据剖析(3):Pandas (二)数据结构 Series

小白学 Python 数据剖析(4):Pandas (三)数据结构 DataFrame

小白学 Python 数据剖析(5):Pandas (四)基础操作(1)查看数据

小白学 Python 数据剖析(6):Pandas (五)基础操作(2)数据选择

小白学 Python 数据剖析(7):Pandas (六)数据导入

小白学 Python 数据剖析(8):Pandas (七)数据预处理

小白学 Python 数据剖析(9):Pandas (八)数据预处理(2)

小白学 Python 数据剖析(10):Pandas (九)数据运算

小白学 Python 数据剖析(11):Pandas (十)数据分组

小白学 Python 数据剖析(12):Pandas (十一)数据透视表(pivot_table)

小白学 Python 数据剖析(13):Pandas (十二)数据表拼接

小白学 Python 数据剖析(14):Pandas (十三)数据导出

小白学 Python 数据剖析(15):数据可视化概述

小白学 Python 数据剖析(16):Matplotlib(一)坐标系

小白学 Python 数据剖析(17):Matplotlib(二)基础操作

小白学 Python 数据剖析(18):Matplotlib(三)常用图表(上)

小白学 Python 数据剖析(19):Matplotlib(四)常用图表(下)

弁言

在最先说 pyecharts 之前,先说一个小我私家的拙见,我一直以为学习、领会或者使用某个类库的时刻最好是通过官方的文档,有些时刻某些库的文档是由外文编写的,阅读未便的时刻通过浏览器自带的翻译大致也能看懂。而 pyecharts 是由国人做的,有中文文档,下面先贴几个官方的链接:

官方文档:https://pyecharts.org/#/zh-cn/intro

GitHub:https://github.com/pyecharts/pyecharts

百度 Echarts 示例:https://www.echartsjs.com/examples/zh/

简介就直接摘抄官方文档了,以下内容来自官方文档:

什么是Hibernate

Echarts 是一个由百度开源的数据可视化,凭借着优越的交互性,精巧的图表设计,获得了众多开发者的认可。而 Python 是一门富有表达力的语言,很适合用于数据处理。当数据剖析遇上数据可视化时,pyecharts 诞生了。

  • 简练的 API 设计,使用如丝滑般流通,支持链式挪用
  • 席卷了 30+ 种常见图表,应有尽有
  • 支持主流 Notebook 环境,Jupyter Notebook 和 JupyterLab
  • 可轻松集成至 Flask,Django 等主流 Web 框架
  • 高度天真的设置项,可轻松搭配出优美的图表
  • 详细的文档和示例,辅助开发者更快的上手项目
  • 多达 400+ 舆图文件以及原生的百度舆图,为地理数据可视化提供强有力的支持

安装

安装照样照着官方文档来,首先是使用 pip 举行安装:

pip install pyecharts

这里有一点需要注重,现在的 pyecharts v1.x 的版本仅支持 python3.6 以上的版本。

若是不想通过 pip 安装,还可以使用源码举行安装:

git clone https://github.com/pyecharts/pyecharts.git
cd pyecharts
pip install -r requirements.txt
python setup.py install
# 或者执行 python install.py

官方还为我们提供了一个查看当前 pyecharts 版本的方式:

import pyecharts

print(pyecharts.__version__)

我这边运行获得的效果是:

1.7.0

现在(2020年3月20日)官方最新的版本为 v1.7.1 ,查看地址为:https://github.com/pyecharts/pyecharts/releases ,可以看到最新版本是 8 天前公布的。

由于我这里的 pyecharts 是上周装的,在这之间正好公布了新的版本,若是想要更新版本,可以使用以下 pip 下令举行更新:

pip install --upgrade pyecharts

我这里更新完以后再次运行上面的查看版本的方式,已经酿成最新的 v1.7.1 版本了。

快速最先

pyecharts 库装好了,接下来赶快搞一个最简朴的示例先试试看:

from pyecharts.charts import Bar

bar = Bar()
bar.add_xaxis([2011,2012,2013,2014,2015,2016,2017])
bar.add_yaxis("产物销量", [58000,60200,63000,71000,84000,90500,107000])

bar.render()

挪用 render() 方式的时刻会在内陆天生一个 HTML 文件,默认会在当前目录天生 render.html 文件,同时也可以传入路径的参数,如 bar.render("mycharts.html") ,拿着这个 HTML 文件直接扔到浏览器中运行就能看到我们适才建立的柱状图了。

小白学 Python 数据剖析(20):pyecharts 概述

pyecharts 的方式都支持链式挪用,就是上面这一段我们可以换成链式挪用的写法,如下:

from pyecharts.charts import Bar

bar = (
    Bar()
    .add_xaxis([2011,2012,2013,2014,2015,2016,2017])
    .add_yaxis("产物销量", [58000,60200,63000,71000,84000,90500,107000])
)

bar.render()

链式挪用的除了写法和前面的差别,作用完全相同,列位同砚选择自己习惯的写法就行。

在使用 pyecharts 的时刻,大量的设置是使用 options 完成的,下面看一个使用 options 举行主题目和副题目设置的小示例:

from pyecharts.charts import Bar
from pyecharts import options as opts

bar = (
    Bar()
    .add_xaxis([2011,2012,2013,2014,2015,2016,2017])
    .add_yaxis("产物销量", [58000,60200,63000,71000,84000,90500,107000])
    .set_global_opts(title_opts=opts.TitleOpts(title="11 ~ 17年 xxx 公司 xx 产物销量图", subtitle="这里是副题目"))
)
bar.render('render_1.html')

# 挪用方式写法,与上面的链式挪用无任何区别
bar = Bar()
bar.add_xaxis([2011,2012,2013,2014,2015,2016,2017])
bar.add_yaxis("产物销量", [58000,60200,63000,71000,84000,90500,107000])
bar.set_global_opts(title_opts=opts.TitleOpts(title="11 ~ 17年 xxx 公司 xx 产物销量图", subtitle="这里是副题目"))
bar.render('render_1.html')

小白学 Python 数据剖析(20):pyecharts 概述

若是想要将效果保留成图片,需要使用 snapshot-selenium 将效果渲染成图片,若是没有安装的话需要先安装,安装下令如下:

pip install snapshot_selenium

这里有一点需要注重,若是想要正常的使用 snapshot_selenium ,需要内陆有和当前 Chrome 正常配套的 ChromeDriver ,若是没有,需要先安装。

若是是我的老读者的话,前面在先容爬虫的时刻有先容过 ChromeDriver 怎么安装,详细可以参考「小白学 Python 爬虫(2):前置准备(一)基本类库的安装」

接着看一个示例:

from pyecharts.charts import Bar
from pyecharts.render import make_snapshot
from snapshot_selenium import snapshot

bar = (
    Bar()
        .add_xaxis([2011, 2012, 2013, 2014, 2015, 2016, 2017])
        .add_yaxis("产物销量", [58000, 60200, 63000, 71000, 84000, 90500, 107000])
        .set_global_opts(title_opts=opts.TitleOpts(title="11 ~ 17年 xxx 公司 xx 产物销量图", subtitle="这里是副题目"))
)
make_snapshot(snapshot, bar.render(), "bar_1.png")

这时,在同目录下天生了一个名称为 bar_1.png 的图片,就不贴出来了,和上面的图片是一样的,只是这张 png 图片是透明底的。

同时,pyecharts 还提供了 10+ 种内置主题,若是有需要也可以自己定制自己喜欢的主题,示例如下:

from pyecharts.charts import Bar
from pyecharts.globals import ThemeType

bar = (
    Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT))
        .add_xaxis([2011, 2012, 2013, 2014, 2015, 2016, 2017])
        .add_yaxis("产物A", [58000, 60200, 63000, 71000, 84000, 90500, 107000])
        .add_yaxis("产物B", [78000,80200,93000,101000,64000,70500,87000])
        .set_global_opts(title_opts=opts.TitleOpts(title="11 ~ 17年 xxx 公司 xx 产物销量图", subtitle="这里是副题目"))
)

bar.render('render_2.html')

效果如下:

小白学 Python 数据剖析(20):pyecharts 概述

代码堆栈

老例子,所有的示例代码都市上传至代码治理堆栈 Github 和 Gitee 上,利便人人取用。

示例代码-Github

示例代码-Gitee

参考

https://pyecharts.org/#/zh-cn/quickstart

原创文章,作者:28x29新闻网,如若转载,请注明出处:https://www.28x29.com/archives/2564.html