首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

2级嵌套条形图

2级嵌套条形图(也称为分组条形图或分层条形图)是一种用于显示数据层次结构的图表类型。它可以帮助你在同一图表中比较不同类别和子类别的数据。

在 Python 中,你可以使用 matplotlib 库来创建2级嵌套条形图。以下是一个示例,展示如何使用 matplotlib 创建一个2级嵌套条形图。

示例代码

假设我们有以下数据:

  • 类别 A 和 B
  • 每个类别下有两个子类别:A1, A2 和 B1, B2
  • 每个子类别有对应的值
代码语言:javascript
复制
import matplotlib.pyplot as plt
import numpy as np

# 数据
categories = ['A', 'B']
subcategories = ['1', '2']
values = {
    'A': [10, 15],
    'B': [20, 25]
}

# 设置条形图的宽度
bar_width = 0.35

# 设置位置
index = np.arange(len(subcategories))

# 创建图形和子图
fig, ax = plt.subplots()

# 绘制条形图
for i, category in enumerate(categories):
    ax.bar(index + i * bar_width, values[category], bar_width, label=category)

# 设置X轴标签
ax.set_xlabel('Subcategories')
ax.set_ylabel('Values')
ax.set_title('2-Level Nested Bar Chart')
ax.set_xticks(index + bar_width / 2)
ax.set_xticklabels(subcategories)

# 添加图例
ax.legend()

# 显示图形
plt.show()

解释

  1. 数据准备
    • categories 列表包含主要类别(A 和 B)。
    • subcategories 列表包含子类别(1 和 2)。
    • values 字典包含每个主要类别下的子类别对应的值。
  2. 设置条形图的宽度
    • bar_width 变量定义了每个条形的宽度。
  3. 设置位置
    • index 变量使用 np.arange 函数生成子类别的索引。
  4. 创建图形和子图
    • 使用 plt.subplots() 创建图形和子图。
  5. 绘制条形图
    • 使用 ax.bar() 方法绘制条形图。通过循环 categories 列表,分别绘制每个主要类别的条形图,并将它们在 X 轴上错开。
  6. 设置X轴标签
    • 使用 ax.set_xticks()ax.set_xticklabels() 设置 X 轴的刻度和标签。
  7. 添加图例
    • 使用 ax.legend() 添加图例。
  8. 显示图形
    • 使用 plt.show() 显示图形。

结果

运行上述代码将生成一个2级嵌套条形图,其中每个主要类别(A 和 B)都有两个子类别(1 和 2),并且每个子类别都有对应的值。图例将显示主要类别的标签,X 轴将显示子类别的标签。

通过这种方式,你可以使用 matplotlib 创建和自定义2级嵌套条形图,以便更好地展示和比较数据。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券