利用并行多图方法将柱形折线图,环形图,堆积图,雷达图融合到一张画布展现中医药市场可视化

echarts官网:https://www.echartsjs.com/index.html
pyecharts官网:https://pyecharts.org/#/zh-cn/intro
pyecharts众多图表示例代码:https://gallery.pyecharts.org/#/README
pyecharts github项目国内镜像: https://gitee.com/mirrors/pyecharts  
 

中医药数据如下表所示 

具体需求如下

让我们来了解一下什么是并行多图,以及关于并行多图的相关语法

并行多图是属于自定义图表中的一大类,自定义图表类主要有以下四种

  • Grid 类:并行显示多张图
  • Overlap 类:结合不同类型图表叠加画在同张图上
  • Page 类:同一网页按顺序展示多图
  • Timeline 类:提供时间线轮播多张图

 这里我们重点说一下Grid类

定义:用户可以自定义结合 Line/Bar/Kline/Scatter/EffectScatter/Pie/HeatMap/Boxplot 图表,将不同类型图表画在多张图上。第一个图需为 有 x/y 轴的图,即不能为 Pie,其他位置顺序任意。

Grid 类的使用:

  1. 引入 Grid类,from pyecharts import Grid
  2. 实例化Grid类,grid = Grid(),可指定page_titlewidthheightjhost参数。
  3. 使用 add() 向 grid 中添加图,至少需要设置一个grid_topgrid_bottomgrid_leftgrid_right 四个参数中的一个。grid_width 和 grid_height 一般不用设置,默认即可。
  4. 使用render() 渲染生成 `.html 文件

注意: Overlap类可放入 Grid类中,不过有个前提,Overlap 不可为多 x 轴或者多 y 轴,否则会出现坐标轴索引混乱问题 

1.导入相关模块 

%matplotlib notebook
import numpy as np
import matplotlib.pyplot as plt
# 0.【设置中文字体】
plt.rcParams["font.sans-serif"] = ["SimHei"]
plt.rcParams["axes.unicode_minus"] = False

需求1.用柱形图和折线图在同一个坐标系展示表1数据

#导入模块
get_ipython().run_line_magic('matplotlib', 'notebook')
import numpy as np
import matplotlib.pyplot as plt
# 0.【设置中文字体】
plt.rcParams["font.sans-serif"] = ["SimHei"]
plt.rcParams["axes.unicode_minus"] = False

import pyecharts.options as opts   
from pyecharts.charts import Bar, Line
 
#x轴数据
x_data = ["2014年","2015年","2016年","2017年","2018年","2019年","2020年","2021年"]
 
#标签名
legend_list = ["诊疗量(万人次)",  "同比增速(%)"]
 
#"诊疗量(万人次)"的数据
value1 =[87430, 90912,96225,101885,107147,116390,105764,120215] 
 
#"同比增速(%)的数据
value2 = [7.40,4.00,5.83,5.81,5.16,8.63,-9.31,13.66]
 
#链式调用
bar = (
    Bar(init_opts=opts.InitOpts(width="1000px", height="500px"))   #设置柱形图宽度与高度
    .add_xaxis(xaxis_data=x_data)                                  #添加x轴的数据
    .add_yaxis(                                                    
        series_name="诊疗量(万人次)",                            #图例名:诊疗量(万人次)
        y_axis=value1,                                             ##y轴柱形图数据
        yaxis_index=1,                            
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值