pyecharts绘制堆叠柱状图

pyecharts 官方文档
在这里插入图片描述

import pandas as pd
from pyecharts.charts import Bar,Grid
from pyecharts import options as opts
data = pd.DataFrame({
    "Type": ["person (29%)", "org (19.5%)", "location (12.1%)", "location/city (4.6%)", "org/spo/team (3.7%)", "org/company (3.3%)", 
             "time (3.1%) ", "org/edu/ins (2.7%)", "building (2.0%)", "art (1.7%)"],
    "AAA": [93,78,77,78,61,56,79,35,37,17],
    "add": ["+5","+4","+9","+8","+26","+15","+17","+12","+21","+4"],
})
stack_bar = (
    Bar(init_opts=opts.InitOpts(width="900px", height="500px"))#设置图表画布宽度
    .add_xaxis(data["Type"].tolist())
    .add_yaxis("AAA", data["AAA"].tolist(),bar_min_width=1,bar_max_width=50,color="#a834a8", stack="stack")
    .add_yaxis("BBB", data["add"].tolist(),color="#42b7bd", stack="stack",bar_min_width=11,is_selected=True)
    #设置标签属性
    .set_series_opts(
        label_opts=opts.LabelOpts(position="inside", color="white", font_size=18,font_style="normal",font_weight='normal',font_family='Times New Roman', formatter="{c}%"))     
    .set_global_opts(
        legend_opts=opts.LegendOpts(textstyle_opts=opts.LabelOpts(font_size=18,font_family='Times New Roman',font_weight='bold')),#设置图例属性
        #设置横纵坐标属性
        xaxis_opts=opts.AxisOpts(name_textstyle_opts=opts.TextStyleOpts(font_weight='bold',font_size=17,font_family='Times New Roman'),name="Type",axislabel_opts=opts.LabelOpts(font_size=18,font_family='Times New Roman',font_weight="normal" ,rotate=19),interval=115,boundary_gap=['50%', '80%']),
        yaxis_opts=opts.AxisOpts(name_textstyle_opts=opts.TextStyleOpts(font_weight='bold',font_size=17,font_family='Times New Roman'),name="Accurary",axislabel_opts=opts.LabelOpts(font_size=18,font_style="normal",font_weight="normal" ,font_family='Times New Romanrial',formatter="{value}%"))
    )
)
#grid=Grid()
# stack_bar=grid.add(stack_bar,grid_opts=opts.GridOpts(pos_top="10%"))#设置图例相对位置

stack_bar.render_notebook()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值