# 导入库并重命名
from pyecharts import options as opts
from pyecharts.charts import Bar, Line,grid
# 创建bar对象
bar = Bar(init_opts=opts.InitOpts(width='1200px', height='300px'))
# 插入数据
x_data = ['2014', '2015', '2016', '2017', '2018', '2019', '2020', '2021']
# 设置柱形图
bar = (
Bar()
# 导入x轴数据标签
.add_xaxis(x_data)
# 导入y轴标签及图表数据
.add_yaxis("蒸发量", [87430, 90912, 96225, 101885, 107147, 116390, 105764, 120215], yaxis_index=0, z=0,
color="orange")
# 扩展坐标轴
.extend_axis(yaxis=opts.AxisOpts(
# 设y轴为数据轴
type_="value", name="同比增速(%)", name_location="center", name_gap=30,
min_=-20, max_=20, axislabel_opts=opts.LabelOpts(font_size=14),
axisline_opts=opts.AxisLineOpts(linestyle_opts=opts.LineStyleOpts(color="blank")),
splitline_opts=opts.SplitLineOpts(
is_show=True, linestyle_opts=opts.LineStyleOpts(opacity=1)), ))
# 设置y轴各属性
.set_global_opts(
yaxis_opts=opts.AxisOpts(
name="诊疗量(万人次)",
name_location="center",
name_gap=60,
min_=0,
max_=130000,
interval=50000,
axislabel_opts=opts.LabelOpts(font_size=14),
offset=0,
# 设置刻度线
axisline_opts=opts.AxisLineOpts(
linestyle_opts=opts.LineStyleOpts(color="blank")), ),
# 设置标题
title_opts=opts.TitleOpts(title="2014-2021年中国中医类医疗卫生机构诊疗量", pos_left="center", pos_top="top"),
# 设置图例
legend_opts=opts.LegendOpts(pos_left='40%', pos_bottom='86%'),
tooltip_opts=opts.TooltipOpts(trigger="axis", axis_pointer_type="cross"), ))
# 设置折线图
line_demo = (
Line()
# 导入x轴数据标签
.add_xaxis(x_data)
# 导入y轴标签及图表数据
.add_yaxis("同比增速(%)", [7.40, 4.00, 5.83, 5.81, 5.16, 8.63, -9.13, 13.66],
# 设置标记的图形为三角形
symbol='triangle', symbol_size=15, yaxis_index=1, color="Magenta",
# 显示标签
label_opts=opts.LabelOpts(is_show=False), ))
# 将折线图叠加在柱状图上
bar.overlap(line_demo)
# 渲染图表
bar.render_notebook()
运行结果: