plt.eventplot拒绝lineoffsets

时间:2017-07-15 11:37:58

标签: python matplotlib

这应该很容易重现:

plt.eventplot(positions=[1, 2, 3], lineoffsets=[1, 2, 3])

加注

ValueError: lineoffsets and positions are unequal sized sequences

由于我无法弄清楚的原因,因为他们显然不是。

1 个答案:

答案 0 :(得分:2)

如果我理解正确,你想绘制3条线,在不同的起始高度(偏移)。这与plt.eventplot一起使用的方式如下:

import numpy as np
import matplotlib.pyplot as plt

positions = np.array([1, 2, 3])[:,np.newaxis]   # or np.array([[1], [2], [3]])
offsets = [1,2,3]

plt.eventplot(positions, lineoffsets=offsets)
plt.show()

您必须为要绘制的每组数据设置偏移量。在您的情况下,您必须将列表划分为3D数组(形状(m,n),数据集的数量为m,每组的数据点数为n。这种方式plt.eventplot知道它必须为每组数据使用不同的偏移量。另请参阅this示例。