Pyecharts修炼之路(2)

Pyecharts

基本图表实例:

饼图:

简要介绍:饼图显示一个数据系列的百分比。

  • 导入库:
from pyecharts import options as opts
from pyecharts.charts import Pie
  • 实例化Pie():
p=Pie()
  • 设置数据:
v1 = ['python','java','php','c','go']
v2 = [116,90,42,97,68]
v3 = [list(i) for i in zip(v1,v2)]
# data_pair 格式为 [(key1, value1), (key2, value2)]
p.add(series_name="编程语言",data_pair=v3)
  • 设置饼图的颜色:
p.set.colors(["blue", "green", "purple", "red", "black"])
  • 设置全局配置项:
p.set_global_opts(title_opts=Opts.TitleOpts(title="编程语言占比"))
  • 设置系列配置项(标签):
    简要说明:b: 数据名,c:数据值
p.set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}"))
  • 显示图例:
p.render_notebook()	

在这里插入图片描述

仪表盘:

  • 导入库:
import pyecharts.options as opts
from pyecharts.charts import Gauge
  • 实例化==Gauge()==并且设置大小:
g = Gauge(init_opts=opts.InitOpts(width="800px", height="500px"))
  • 添加数据:
g.add(series_name="业务指标", data_pair=[["完成率", 55.5]])
  • 设置全局配置项(图例配置项,提示框配置项):
p.set_global_opts(
		# 显示图例样件 False 不显示
        legend_opts=opts.LegendOpts(is_show=False),
        # is_show 是否显示提示框 formatter标签内容格式器,
        tooltip_opts=opts.TooltipOpts(is_show=True, formatter="{a} <br/>{b} : {c}%"),
    )
  
  • 显示图例:
g.render_notebook()

在这里插入图片描述

箱线图:

简要介绍:主要包含六个数据节点,将一组数据从大到小排列,分别计算出他的上边缘,上四分位数Q3,中位数,下四分位数Q1,下边缘,还有一个异常值。

  • 导库
from pyecharts import options as opts
from pyecharts.charts import Boxplot
  • 实例化Boxplot:
b = Boxplot()
  • 添加数据进xy轴:
# 每个箱线图的y轴数据都是以列表填充
v1 = [
      [850, 740, 900, 1070, 930, 850, 950, 980, 980, 880]
      ,[1000, 980, 930, 650, 760, 810, 1000, 1000, 960, 960],
  ]
  v2 = [
      [890, 810, 810, 820, 800, 770, 760, 740, 750, 760]
      , [910, 920, 890, 860, 880, 720, 840, 850, 850, 780],
  ]
#  添加两个x轴数据 列表形式
b.add_xaxis(["exp1","exp2"])
# 添加y轴的数据以及图例
b.add_yaxis("A", b.prepare_data(v1))
b.add_yaxis("B", b.prepare_data(v2))
  • 设置全局配置项:
b.set_global_opts(title_opts=opts.TitleOpts(title="箱线图实例"))
  • 显示图例:
b.render_notebook()

在这里插入图片描述

层叠多图:

折线图与柱状图叠加

  • 导库:
from pyecharts import options as opts
from pyecharts.charts import Bar, Line
  • 实例化Bar()Line():
b = Bar()
l = Line()
  • 添加xy轴数据,设置系列名称:
v1 = [2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3]
v2 = [2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3]
v3 = [2.0, 2.2, 3.3, 4.5, 6.3, 10.2, 20.3, 23.4, 23.0, 16.5, 12.0, 6.2]
v4 = ['{:2d}月'.format(s) for s in range(1,13)]
# 设置x轴的数据
b.add_xaxis(xaxis_data=v4)
# 增加y轴数据并且设置系列名
b.add_yaxis("蒸发量",v1)
b.add_yaxis("降水量",v2)
  • 扩展x/y轴,这里问扩展y轴(参考global_options.AxisOpts在官方文档种的全局配置选中)坐标轴标签配置项:
b.extend_axis(yaxis=opts.AxisOpts(axislabel_opts=opts.LabelOpts(formatter="{value} °C"), interval=5))
  • 设置系列配置项:
# 是否显示标签 这里为False 不显示标签 可以改为True查看效果
b.set_series_opts(label_opts=opts.LabelOpts(is_show=False))
  • 设置全局配置项:
b.set_global_opts(
        title_opts=opts.TitleOpts(title="Overlap-bar+line"),
		yaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(formatter="{value} ml")),
    )
  • 设置折线图的数据:
l.add_axis(v4)
#yaxis_index 使用的 y 轴的 index
l.add_yaxis(series_name="平均温度",y_axis=v3,yaxis_index=1)
  • 两个图融合:
b.overlap(l)
  • 显示图例:
b.render_notebook()

在这里插入图片描述

柱状图上下叠加:

  • 导入库:
from pyecharts import options as opts
from pyecharts.charts import Bar
  • 实例化Bar():
b = Bar()
  • 添加x、y轴数据,并且设置堆叠:
v1=[1,2,3,4,5]
v2=[6,7,8,9,10]
v3=["{:2d}".format(x) for x in range(5)]
b.add_xaxis(v3)
b.add_yaxis("A",v1,stack="A")
b.add_yaxis("b",v2,stack="A")
  • 设置全局配置项:
b.set_global_opts(title_opts=opts.TitleOpts(title="stack图"))
  • 显示图列:
b.render_notebook()

在这里插入图片描述

发布了22 篇原创文章 · 获赞 12 · 访问量 820

猜你喜欢

转载自blog.csdn.net/weixin_44984627/article/details/105106708
今日推荐