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

Matplotlib仅在堆叠条形图上绘制每2条条形图中的1条

Matplotlib是一个Python的数据可视化库,用于创建各种类型的图表和图形。对于堆叠条形图,可以使用Matplotlib的bar函数来绘制。

堆叠条形图是一种用于比较多个类别数据的图表类型。在堆叠条形图中,每个类别的数据由多个条形图组成,每个条形图代表一个子类别的数据,它们在同一位置上堆叠在一起。

要在堆叠条形图上绘制每2条条形图中的1条,可以通过设置条形图的宽度和间隔来实现。具体步骤如下:

  1. 导入Matplotlib库:
代码语言:txt
复制
import matplotlib.pyplot as plt
  1. 创建数据:
代码语言:txt
复制
categories = ['Category 1', 'Category 2', 'Category 3', 'Category 4']
subcategories = ['Subcategory 1', 'Subcategory 2']
data = [[10, 20], [15, 25], [12, 18], [8, 16]]

这里,categories表示各个类别的名称,subcategories表示各个子类别的名称,data表示每个子类别在各个类别下的数值。

  1. 绘制堆叠条形图:
代码语言:txt
复制
width = 0.4  # 每个条形图的宽度
spacing = 0.2  # 两个条形图之间的间隔

fig, ax = plt.subplots()

for i, category in enumerate(categories):
    x = [j + (width + spacing) * i for j in range(len(subcategories))]
    y = data[i]
    ax.bar(x, y, width=width)

ax.set_xticks([j + (width + spacing) * (len(categories) - 1) / 2 for j in range(len(subcategories))])
ax.set_xticklabels(subcategories)
ax.legend(categories)

plt.show()

在这段代码中,我们使用enumerate函数来遍历每个类别,并使用xy来表示每个子类别的位置和数值。然后,使用ax.bar函数绘制条形图,并设置width参数为条形图的宽度。

最后,使用ax.set_xticksax.set_xticklabels来设置x轴的刻度和标签,使用ax.legend来添加图例。

这样,就可以在堆叠条形图上绘制每2条条形图中的1条。关于Matplotlib的更多信息和示例,可以参考腾讯云的Matplotlib产品介绍链接地址:Matplotlib产品介绍

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

相关·内容

领券