第十四周作业

from pyecharts import options as opts
from pyecharts.charts import Bar, Line
from pyecharts.commons.utils import JsCode

# 表1数据
years = ['2014年', '2015年', '2016年', '2017年', '2018年', '2019年', '2020年', '2021年']
treatments = [87430, 90912, 96225, 101885, 107147, 116390, 105764, 120215]
growth_rates = [7.40, 4.00, 5.83, 5.81, 5.16, 8.63, -9.13, 13.66]

bar = (
    Bar()
    .add_xaxis(years)
    .add_yaxis("诊疗量(万人次)", treatments)
    .set_series_opts(itemstyle_opts=opts.ItemStyleOpts( 
                     opacity=0.5),label_opts=opts.LabelOpts(position="top"))
    .extend_axis(
        yaxis=opts.AxisOpts(
            name="同比增速(%)",
            type_="value",
            min_=-10,
            max_=15,
            position="right",
            axisline_opts=opts.AxisLineOpts(
                linestyle_opts=opts.LineStyleOpts(color="#d14a61")
            ),
            axislabel_opts=opts.LabelOpts(formatter="{value} %"),
        )
    )
    .set_global_opts(
        title_opts=opts.TitleOpts(title="诊疗量和同比增速"),
        tooltip_opts=opts.TooltipOpts(trigger="axis", axis_pointer_type="cross"),
        xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=45)),
        yaxis_opts=opts.AxisOpts(
            name="诊疗量(万人次)", position="left", axislabel_opts=opts.LabelOpts(formatter="{value} 万")
        ),
    )
)

line = (
    Line()
    .add_xaxis(years)
    .add_yaxis(
        "同比增速(%)",
        growth_rates,
        yaxis_index=1,
        label_opts=opts.LabelOpts(formatter="{value} %"),
    )
)

# 合并柱形图和折线图
bar.overlap(line)

# 渲染图表
bar.overlap(line).render_notebook()

运行结果如下:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值