小编270*_*ohn的帖子

更高效的matplotlib堆积条形图 - 如何计算底值

我需要一些帮助,使用matlibplot在python中制作一组堆积的条形图.我的基本代码如下,但我的问题是如何产生的价值底部超越二号一个任何元素有效.我可以让示例图正确堆叠(总是a,b,c,d从下到上)

import numpy as np
import matplotlib.pyplot as plt

ind = np.arange(3)

a = [3,6,9]
b = [2,7,1]
c = [0,3,1]
d = [4,0,3]

p1 = plt.bar(ind, a, 1, color='#ff3333')
p2 = plt.bar(ind, b, 1, color='#33ff33', bottom=a)
p3 = plt.bar(ind, c, 1, color='#3333ff', bottom=[a[j] +b[j] for j in range(len(a))])
p4 = plt.bar(ind, d, 1, color='#33ffff', bottom=[a[j] +b[j] +c[j] for j in range(len(a))])

plt.show()
Run Code Online (Sandbox Code Playgroud)

我的最终代码可能有非常多的条形和不断扩展的函数bottom = [...]不能是最好的解决方案.如果您还可以解释我需要如何获得该值,那将会很棒.有一个numpy功能.

非常感谢你!!!PS我找了答案,但我不明白我能找到什么.

python numpy matplotlib stackedbarseries

18
推荐指数
3
解决办法
3万
查看次数

标签 统计

matplotlib ×1

numpy ×1

python ×1

stackedbarseries ×1