使用pyecharts进行开发前,开发者需要先在本地计算机安装pyecharts。
安装步骤:打开Anaconda Prompt工具,通过pip清华镜像源安装pyecharts,在命令行输入:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyecharts
Pyecharts官网:
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
完成以下任务:
实现需求一: 用柱形图和折线图在同一个坐标系展示表1数据,得到图1
示例代码:
#导入所需模块
from pyecharts import options as opts
#导入需要用到的图类表(柱形图,组合图,折线图)
from pyecharts.charts import Bar, Grid, Line
x_data = ["{}月".format(i) for i in range(2014,2022)]
bar = (
Bar()
.add_xaxis(x_data)
.add_yaxis(
"诊疗量(万人次)",
[87430,90912,96225,101885,107147,116390,105764,120215],
yaxis_index=0, #表示y轴的索引,用于拥有多个y轴的单图表中
color="#d14a61", #柱形图颜色
)
.extend_axis(
yaxis=opts.AxisOpts(
name="诊疗量(万人次)",
type_="value", #'value': 数值轴,适用于连续数据
min_=0, #设置左纵坐标轴的刻度值最低范围为0
max_=125000, #设置左纵坐标轴的刻度值最高范围为125000
interval=25000, #设置左纵坐标轴的刻度值范围的等分间隔为25000
position="left", #自定义在左纵坐标轴
axisline_opts=opts.AxisLineOpts(
linestyle_opts=opts.LineStyleOpts(color="#d14a61") #坐标轴数值颜色
),
axislabel_opts=opts.LabelOpts(formatter="{value} "),
)
)
.extend_axis(
yaxis=opts.AxisOpts(
type_="value", #'value': 数值轴,适用于连续数据
name="同比增速(%)",
min_=-20, #设置右纵坐标轴的刻度值最低范围为-20
max_=20, #设置右纵坐标轴的刻度值最高范围为20
position="right", #自定义在右坐标轴
axisline_opts=opts.AxisLineOpts(
linestyle_opts=opts.LineStyleOpts(color="#675bba") #坐标轴数值颜色
),
axislabel_opts=opts.LabelOpts(formatter="{value} %"),
splitline_opts=opts.SplitLineOpts(
is_show=False, linestyle_opts=opts.LineStyleOpts(opacity=1) #SplitLineOpts:分割线配置项,is_show表示是否显示分割线
),
)
)
#全局配置项
.set_global_opts(
yaxis_opts=opts.AxisOpts(
name="诊疗量(万人次)", #坐标轴名称
min_=0, #设置左纵坐标轴的刻度值最低范围为0
max_=125000, #设置左纵坐标轴的刻度值最高范围为125000
interval=25000, #设置左纵坐标轴的刻度值范围的等分间隔为25000
position="left", #将坐标轴定义在左侧
offset=0,
axisline_opts=opts.AxisLineOpts(
linestyle_opts=opts.LineStyleOpts(color="#5793f3")
),
axislabel_opts=opts.LabelOpts(formatter="{value} "),
),
title_opts=opts.TitleOpts(title="2014-2021年中国中医类医疗卫生机构诊疗量"), #标题配置项
tooltip_opts=opts.TooltipOpts(trigger="axis", axis_pointer_type="cross" ),
#提示框配置项
# axis_pointer_type:指示