使用线条时,Pyplot不会使用孔绘制数据

时间:2015-04-30 14:06:14

标签: python matplotlib

我想绘制列表b,其中包含多个None个对象来表示缺少的数据。但是,当我尝试使用线条绘制它时,pyplot没有绘制任何内容。如果我使用点绘制它,这不会发生。另一组完整的数据正常绘制。低于MWE:

from matplotlib import pyplot as plt
a=range(10,20)
b=[ el if el%2==0 else None for el in a ]
x=range(10)

plt.plot(x, a, 'o')
plt.plot(x, b, '-')
#plt.savefig('test.png')
plt.show()

仅显示列表a中的数据。如果我告诉pyplot用点绘制它就可以了。我错过了什么?

提前谢谢。

1 个答案:

答案 0 :(得分:1)

在两个点之间绘制一条线,并且在matplotlib中,两端不需要None来绘制线条。如果您更改b以便:

b=[ el if el%3!=0 else None for el in a ]

即,将每第3个点设置为None,然后得到

enter image description here

希望有道理。