初识pyecharts:
- 什么是pyecharts?
pyecharts=python+echarts
而Echarts 是一个由百度开源的数据可视化工具,有着良好的交互性,精巧的图表设计能力。当Python与Echarts结合就形成了pyecharts.
有了matplotlib和seaborn为什么要用pyecharts?
pyecharts是一种交互式的可视化库,图形展示跟matplotlib相比就好比河流与池塘。pyecharts更加灵活美观,作图更加灵活、巧妙。还有一点这是Python中为数不多的国人开发的库,也算是支持国货了吧!
其实学习pyecharts只要看看官方API文档基本就可以了,话不多说,上连接
官方API文档
https://pyecharts.org/#/zh-cn/intro
官方文档是中文的,清晰简洁。有目录栏,方便查看。各项属性和介绍都有。
- 如何调用pyecharts ?
from pyecharts.charts import Bar#调用柱状图 from pyecharts import options as opts#调用设置 from pyecharts.globals import ThemeType#调用内置主题
下面简单画一个图形
1 import numpy as np 2 import pandas as pd 3 import pyecharts.charts 4 from pyecharts.charts import Bar 5 from pyecharts.globals import ThemeType 6 from pyecharts import options as opts
1 x=range(1,9) 2 y=[30,45,23,45,67,36,78,56]
1 bar=Bar(init_opts=opts.InitOpts(theme=ThemeType.ESSOS))#初始化设置 2 bar.add_xaxis(list(x))#添加x轴 3 bar.add_yaxis("体重",y)#添加y轴 4 bar.set_global_opts(title_opts=opts.TitleOpts(title="这是标题"))#全局设置 5 bar.render_notebook()#在notebook中显示图形
书写形式也支持链式结构
bar=(Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT)) .add_xaxis(list(x)) .add_yaxis("升高",y1) .add_yaxis("体重",y) .set_global_opts(title_opts=opts.TitleOpts(title="这是标题"))) bar.render_notebook()
我们发现整个图作下来有许多的opts,是的这是图形美化的精髓,下面我们来聊聊opts
opts:配置项
全局配置项:set_globals_opts
官方图表如下:
init_opts:
bar=Bar(init_opts=opts.InitOpts(width="900px",height="600px",theme=ThemeType.MACARONS)) bar.add_xaxis(list(x)) bar.add_yaxis("体重",y) bar.render_notebook()
bar=Bar(init_opts=opts.InitOpts(width="900px",height="700px",theme=ThemeType.MACARONS,bg_color="dark")) bar.add_xaxis(list(x)) bar.add_yaxis("体重",y) bar.render_notebook()
class InitOpts( # 图表画布宽度,css 长度单位。 width: str = "900px", # 图表画布高度,css 长度单位。 height: str = "500px", # 图表 ID,图表唯一标识,用于在多图表时区分。 chart_id: Optional[str] = None, # 渲染风格,可选 "canvas", "svg" # # 参考 `全局变量` 章节 renderer: str = RenderType.CANVAS, # 网页标题 page_title: str = "Awesome-pyecharts", # 图表主题 theme: str = "white", # 图表背景颜色 bg_color: Optional[str] = None, # 远程 js host,如不设置默认为 https://assets.pyecharts.org/assets/" # 参考 `全局变量` 章节 js_host: str = "", # 画图动画初始化配置,参考 `global_options.AnimationOpts` animation_opts: Union[AnimationOpts, dict] = AnimationOpts(), )
set_global_optss
1 bar=Bar() 2 bar.add_xaxis(list(x)) 3 bar.add_yaxis("体重",y,stack="stack1")#stack表示堆积柱状图 4 bar.add_yaxis("升高",y1,stack="stack1") 5 bar.set_global_opts(title_opts=opts.TitleOpts(title="这是主标题"), 6 toolbox_opts=opts.ToolboxOpts(is_show=True))#添加标题和工具箱 7 bar.render_notebook()
title_opts:添加主标题
toolbox_opts:添加工具箱
1 bar=Bar() 2 bar.add_xaxis(list(x)) 3 bar.add_yaxis("升高",y1,stack="stack1") 4 bar.add_yaxis("体重",y,stack="stack1") 5 bar.set_global_opts(title_opts=opts.TitleOpts(title="这是主标题",pos_left="0%"),#标题 6 toolbox_opts=opts.ToolboxOpts(is_show=True),#工具箱 7 visualmap_opts=opts.VisualMapOpts(is_show=True,type_="color"),#视觉映射 8 legend_opts=opts.LegendOpts(is_show=True),#图例 9 datazoom_opts=opts.DataZoomOpts(is_show=True,type_="slider")#区域缩放 10 ) 11 bar.render_notebook()