当前位置:首页python > 正文

matplotlib堆叠柱状图

作者:野牛程序员:2023-07-14 12:48:41python阅读 2529

要使用Matplotlib创建堆叠柱状图,可以按照以下步骤进行操作:

  1. 导入所需的库:

import matplotlib.pyplot as plt
import numpy as np
  1. 创建数据:

categories = ['类别1', '类别2', '类别3']  # 柱状图的类别
labels = ['数据1', '数据2', '数据3']  # 每个柱状图堆叠的数据标签

data = np.array([[10, 15, 12],
                 [8, 12, 10],
                 [15, 10, 13]])  # 堆叠的数据矩阵,每行代表一个类别,每列代表一个数据
  1. 创建堆叠柱状图:

fig, ax = plt.subplots()

# 计算堆叠柱状图的位置
bar_width = 0.35  # 每个柱状图的宽度
bar_positions = np.arange(len(categories))  # 柱状图的位置

# 对于每个数据标签,创建一个堆叠柱状图
for i, label in enumerate(labels):
    bottom = np.sum(data[:i], axis=0)  # 堆叠的底部位置
    ax.bar(bar_positions, data[i], bar_width, bottom=bottom, label=label)

# 设置图表标题和标签
ax.set_title('堆叠柱状图')
ax.set_xlabel('类别')
ax.set_ylabel('数据')

# 添加图例
ax.legend()

# 设置类别标签
ax.set_xticks(bar_positions)
ax.set_xticklabels(categories)

# 显示图表
plt.show()

这样,就可以创建一个堆叠柱状图,其中每个类别有多个数据标签,并且柱状图按照数据标签堆叠在一起。根据数据和需求,可以调整标签、颜色、样式等来自定义图表。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击