使用Python绘制堆积柱形图

使用Python绘制堆积柱形图

堆积柱形图

堆积柱形图(Stacked Bar Chart)是一种数据可视化图表,用于显示不同类别的数值在某一变量上的累积情况。每一个柱状条显示多个子类别的数值,子类别的数值在柱状条上堆积在一起,以显示总和及各个部分的贡献情况。

效果

代码

python 复制代码
import matplotlib.pyplot as plt
import numpy as np

# 创建示例数据
categories = ['Category 1', 'Category 2', 'Category 3', 'Category 4']
subcategories = ['Subcategory A', 'Subcategory B', 'Subcategory C']
data = np.array([
    [5, 3, 4, 7],
    [2, 4, 6, 8],
    [3, 7, 8, 2]
])

# 定义柱状条的位置
x = np.arange(len(categories))

# 绘制堆积柱形图
fig, ax = plt.subplots()

# 底部初始值
bottom = np.zeros(len(categories))

# 为每个子类别绘制条形
for i in range(len(subcategories)):
    ax.bar(x, data[i], bottom=bottom, label=subcategories[i])
    bottom += data[i]

# 设置图表标题和标签
plt.title('Stacked Bar Chart')
plt.xlabel('Categories')
plt.ylabel('Values')

# 设置x轴刻度
plt.xticks(x, categories)

# 添加图例
plt.legend(subcategories)

# 显示图表
plt.tight_layout()
plt.show()
相关推荐
CS创新实验室3 分钟前
《计算机网络》深入学:轮询和令牌传递协议
开发语言·计算机网络·考研·php·408
王干脆16 分钟前
ConcurrentHashMap禁止null键值的原因
java·开发语言
代码游侠27 分钟前
ARM嵌入式开发代码实践——LED灯闪烁(C语言版)
c语言·开发语言·arm开发·笔记·嵌入式硬件·学习
—Qeyser29 分钟前
Flutter Text 文本组件完全指南
开发语言·javascript·flutter
咕噜企业分发小米33 分钟前
豆包大模型在药物研发中的知识检索效率如何?
java·开发语言·数据库
橘子师兄38 分钟前
C++AI大模型接入SDK—快速上手
开发语言·c++·人工智能
麒qiqi39 分钟前
进阶 IMX6ULL 裸机开发:从 C 语言点灯到 BSP 工程化(附 SDK / 链接脚本实战)
c语言·开发语言
weixin_4624462339 分钟前
Python用Flask后端解析Excel图表,Vue3+ECharts前端动态还原(附全套代码)
前端·python·flask·echats
偷星星的贼111 小时前
如何为开源Python项目做贡献?
jvm·数据库·python