前言
文档位于 pyecharts - A Python Echarts Plotting Library built with love.
示例位于 Document
echarts
官网 https://www.echartsjs.com/zh/index.html
1. 简介
1.1 Pyecharts 是什么
- Echarts 是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。而 Python 是一门富有表达力的语言,很适合用于数据处理。当数据分析遇上数据可视化时,Pyecharts 诞生了
- 可以理解为 Pyecharts 是实现 Echarts 与 Python 对接的一个库
1.2 Pyecharts 特性
- 简洁的 API 设计,使用如丝滑般流畅,支持链式调用
- 囊括了 30+ 种常见图表,应有尽有
- 支持主流 Notebook 环境,Jupyter Notebook 和 JupyterLab
- 可轻松集成至 Flask,Django 等主流 Web 框架
- 高度灵活的配置项,可轻松搭配出精美的图表
- 详细的文档和示例,帮助开发者更快的上手项目
- 多达 400+ 地图文件以及原生的百度地图,为地理数据可视化提供强有力的支持
2. 安装
2.1 Pyecharts 版本
Pyecharts一共有三个大版本:V0.X 、 V1.X 、V2.X ,版本之间差别比较大!,v0.5.X 和 v1 间不兼容,v1 是一个全新的版本,详见 ISSUE#892,ISSUE#1033。
支持 Python2.7,3.4+
经开发团队决定,0.5.x 版本将不再进行维护,0.5.x 版本代码位于 05x 分支,文档位于 05x-docs.pyecharts.org。
仅支持 Python3.6+
新版本系列将从 v1.0.0 开始,文档位于 pyecharts.org,即本文档。
支持 Python3.6 ~ Python 3.11
新版本系列从 Echarts 4 切换到 Echarts 5
宏哥本系列用的 Pyecharts 版本是2.0.4 ! 如下图所示:
谨记:不要装错啦!不同版本有些图参数设置不一样!
2.2安装
(1)直接 pip 安装:
pip(3) install pyecharts==2.0.4
显示successfully,表示安装成功!!!
但宏哥实测时发现,由于墙的原因,下载时会出现断线和速度过慢的问题导致下载失败,所以建议通过清华镜像来进行下载:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyecharts
(2)源码安装
$ git clone https://github.com/pyecharts/pyecharts.git
$ cd pyecharts
$ pip install -r requirements.txt
$ python setup.py install
# 或者执行 python install.py
(3)查看已安装版本:
import pyecharts
print(pyecharts.__version__)
2.3 常用安装方式
pip install xxx(库名)
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ xxx(库名)
常用的国内镜像源:
- 清华大学镜像源:https://pypi.tuna.tsinghua.edu.cn/simple/
- 华为镜像源: https://mirrors.huaweicloud.com/
- 阿里云镜像源:http://mirrors.aliyun.com/pypi/simple/
- 豆瓣镜像源:http://pypi.douban.com/simple/
- 中国科学技术大学镜像源:ttp://http://pypi.mirrors.ustc.edu.cn/simple/
- 腾讯开源镜像:http://mirrors.cloud.tencent.com/pypi/simple
- 网易源镜像:http://mirrors.163.com/
- 搜狐源镜像:http://mirrors.sohu.com/
2.4 安装地图文件(可选)
后期涉及到地图部分的可视化,所以这里就把地图包先装上(如果自己的可视化不包含地图,可以先不装,需要的时候再装也可以):
- 全球国家地图: echarts-countries-pypkg
- 中国省级地图: echarts-china-provinces-pypkg
- 中国市级地图: echarts-china-cities-pypkg
pip install pyecharts
pip install echarts-countries-pypkg
pip install echarts-china-provinces-pypkg
pip install echarts-china-cities-pypkg
3.pyecharts常用的方法
(1)add(...)主要方法,用于加载要绘制的图表数据和设置各种配置。
(2)show_config();打印输出图标的所有配置项信息
(3)render(“xxx.html”):用于绘制生成html文件,默认在根目录下生成一个html文件,当未指定要绘制的文件名称,默认render.html。支持设置文件保存位置。
4.绘制图表的基本步骤
(1)初始化图表类型
Xxx=图表类型()
chart_name = Type() #初始化具体类型图表
例如,绘制柱图
mybar=Bar()
(2)添加配置项
xxx.add(.....)
add() #加数据及配置项,基本都在操作这个函数
(3)生成html文件
xxx.render(“xxx.html”)
render() #生成 .html文件,可设置文件类型
5. 图表类型
5.1 直角坐标系图表
- Bar: 柱状图/条形图
- Boxplot: 箱形图
- EffectScatter: 连清特效散点图
- HeatMap: 热力图
- Kline/Candlestick: K线图
- Line: 折线/面积图
- PictorialBar: 象形柱状图
- Scatter: 散点图
- Overlap: 层查多图
5.2 基本图表
- Calendar: 日历图
- Funnel: 漏斗图
- Gauge: 仪表盘
- Graph: 关系图
- Liquid: 水球图
- Parallel: 平行坐标系
- Pie: 饼图
- Polar: 极坐标系
- Radar: 雷达图
- Sankey: 桑基图
- Sunburst: 旭日图
- ThemeRiver:主题河流图
- WordCloud: 词云图
5.3 树形图表
- Tree:树图
- TreeMap:矩形树图
5.4 地理图表
- Geo:地理坐标系
- Map:地图
- BMap:百度地图
5.5. 3D图表
- Bar3D: 3D柱状图
- Line3D: 3D折线图
- Scatter3D: 3D散点图
- Surface3D: 3D曲面图
- Lines3D:3D 路径图
- Map3D-三维地图
- GraphGL-GL关系图
5.6. 组合图表
- Grid: 并行多图
- Page: 顺序多图
- Tab: 选项卡多图
- Timeline: 时间线轮播多图
5.7. HTML组件
- Component 通用配置项
- Table: 表格
- Image: 图像
6. 绘图输出
6.1 输出到 jupyter notebook
# 将图形渲染到 notebook
def render_notebook()
6.2 输出到 html 文件
def render(
# 生成图片路径
path: str = "render.html",
# 模板路径
template_name: str = "simple_chart.html",
# jinja2.Environment 类实例,可以配置各类环境参数
env: Optional[Environment] = None,
)
7.图形设置
图形的设置方法都是同宗同源,大致主要为以下几种:
1、设置颜色:
.add_yaxis( "商家A", Faker.values(), itemstyle_opts=opts.ItemStyleOpts(color='red')
2、设置间距与宽度:通过添加gap百分比,默认为类目间距的 20%
.add_yaxis('门店', data2,category_gap="50%")
3、设置是否显示数据:通过添加label_opts = opts.LabelOpts(is_show=False)
.add_yaxis('MSE', data1,label_opts = opts.LabelOpts(is_show=False))
4、设置平均线:
.add_yaxis('MSE', data1, markline_opts=opts.MarkLineOpts(data=[opts.MarkLineItem(type_="average")])
5、设置y轴显示数据的范围:在.set_global_opts里添加yaxis_opts=opts.AxisOpts(min_=0.35,)min_和max_
.set_global_opts(title_opts=opts.TitleOpts(title="MSE", subtitle="MSE与决策树数量关系图"), yaxis_opts=opts.AxisOpts(min_=0.35,max_=0.6))
6、设置datazoom_opts拉动条形轴:在.set_global_opts里添加datazoom_opts=[opts.DataZoomOpts()],
.set_global_opts(title_opts=opts.TitleOpts(title="MSE", subtitle="MSE与决策树数量关系图"), datazoom_opts=[opts.DataZoomOpts()], yaxis_opts=opts.AxisOpts(min_=0.33,))
7、设置画布大小:
Bar(init_opts=opts.InitOpts(width="720px", height="680px"))
8、设置图形中的竖直区域
.set_series_opts( markarea_opts=opts.MarkAreaOpts( data=[ opts.MarkAreaItem(x=(s,e)) for s,e in zip([10],[12]) ] ))
9、横坐标显示不全,倾斜横坐标
.set_global_opts(title_opts=opts.TitleOpts(title="天气情况"), xaxis_opts=opts.AxisOpts(name='日期',axislabel_opts={"rotate":50}))
8.五分钟上手
8.1简单示例
首先开始来绘制你的第一个图表。
1.参考代码
# coding=utf-8
标签:bar,pyecharts,render,Python,html,add,初识,Pyecharts,opts
From: https://blog.csdn.net/qq_23827149/article/details/145295332