Python matplotlib中多个变量的累积绘图?

Python matplotlib中多个变量的累积绘图?,python,matplotlib,Python,Matplotlib,使用matplotlib/numpy是否有一种简单的方法来绘制多个变量的累积图 我在想这样一张图 例如,我有数据a=[0,3,6],b=[0,3,4],这应该成为一个计数图 [(0,a=1,b=1),(3,a=2,b=2),(4,a=2,b=3),(6,a=3,b=3)]。因此,没有装箱,而是所有x值都会得到一个特定变量的计数低于该值的点。a和b值应相互叠加 我可以想象如何用对分实现复杂的交错预处理,但我看不到一个简单的解决方案 有什么建议吗 编辑:累积计数的另一种解释: 我有多个具有x值的数据

使用matplotlib/numpy是否有一种简单的方法来绘制多个变量的累积图

我在想这样一张图

例如,我有数据
a=[0,3,6]
b=[0,3,4]
,这应该成为一个计数图
[(0,a=1,b=1),(3,a=2,b=2),(4,a=2,b=3),(6,a=3,b=3)]
。因此,没有装箱,而是所有x值都会得到一个特定变量的计数低于该值的点。a和b值应相互叠加

我可以想象如何用对分实现复杂的交错预处理,但我看不到一个简单的解决方案

有什么建议吗

编辑:累积计数的另一种解释: 我有多个具有x值的数据行。例如,
a=[0,3,6]
b=[0,3,4]
c=[1,7]

我需要每个数据行的图表。绘图x坐标的可能值是所有数据行值的并集。这里
[0,1,3,4,6,7]

对于这些总x值中的每一个,特定行的y值将是该数据中有多少值低于x坐标。因此对于x坐标
x=[0,1,3,4,6,7]
我得到
ya=[1,1,2,2,3,3]
yb=[1,1,2,3,3]
yc=[0,1,1,1,1,2]

当然,我会使用堆叠绘图:)

您在链接中提到的绘图类型可以通过
stackplot
实现。请参见以下示例:

我对示例数据的含义并不完全清楚。你能举一个更详细的例子说明你所拥有的数据和你想要得到什么吗

编辑:一个非常简单的方法:

>>> a=[0,3,6]
>>> b=[0,3,4]
>>> c=[1, 7]
>>> 
>>> x = [0,1,3,4,6,7]
>>> 
>>> ya = []
>>> 
>>> val = 0
>>> for i in x:
...     if i in a:
...         val += 1
...         ya.append(val)
...     else:
...         ya.append(val)
... 
>>> ya
[1, 1, 2, 2, 3, 3]

但可能会有更有效的方法。您使用numpy或pandas进行分析吗?或者使用普通列表?

看起来不错:)我已经更新了多个数据数组累积计数的解释。谢谢你的建议!我使用numpy,但无论如何我很快就会学会熊猫。实际上,我需要一个小的调整,因为有时有超过
+=1
的值。我还需要同时对所有变量进行处理。但它是有效的:)我想可能有一个优雅的numpy解决方案更有效:)这似乎是一个标准任务。也许你可以看看
bincount
()