绘制堆积百分比条形图是一种常见的数据可视化方法,用于展示各部分在整体中的占比情况。使用 matplotlib
库可以实现这一功能。以下是详细步骤和相关概念:
以下是一个使用 matplotlib
绘制垂直堆积百分比条形图的示例代码:
import matplotlib.pyplot as plt
import numpy as np
# 示例数据
categories = ['A', 'B', 'C', 'D']
values1 = [30, 20, 40, 10]
values2 = [10, 30, 20, 40]
# 计算总和
totals = [sum(x) for x in zip(values1, values2)]
# 计算百分比
percentages1 = [v / t * 100 for v, t in zip(values1, totals)]
percentages2 = [v / t * 100 for v, t in zip(values2, totals)]
# 设置条形图的位置和宽度
ind = np.arange(len(categories))
width = 0.35
# 绘制堆积百分比条形图
p1 = plt.bar(ind, percentages1, width, label='Group 1', color='b')
p2 = plt.bar(ind, percentages2, width, bottom=percentages1, label='Group 2', color='r')
# 添加标签和标题
plt.ylabel('Percentage (%)')
plt.title('Stacked Percentage Bar Chart')
plt.xticks(ind, categories)
plt.legend((p1[0], p2[0]), ('Group 1', 'Group 2'))
# 显示图表
plt.show()
通过以上步骤和示例代码,可以有效地绘制堆积百分比条形图,并解决常见的可视化问题。
领取专属 10元无门槛券
手把手带您无忧上云