Python - Matplotlib - 在图表上绘制不完整的数据

时间:2012-03-28 21:24:56

标签: python matplotlib

我正在尝试编写程序以生成燃尽图表。 x轴是日期。 y轴显示特定日期的剩余小时数。问题是因为它是燃尽图,所以提前所有日期都没有数据。所以这会导致错误 -

"ValueError: x and y must have same first dimension"

所以我的问题是我可以分配给Y轴上剩余点的默认值? 如果此信息不充分,我将粘贴实际代码。感谢。

2 个答案:

答案 0 :(得分:2)

我不确定这是否是您想要的,但通过使用蒙版数组,您可以避免绘制特定点。请参阅我的回答here

或者你可能想要更像this的东西,它会在x轴上跳过它们而不是绘制它们?

答案 1 :(得分:1)

我知道这个问题已有2年半的历史了,但我在绘制缺少数据的图表时遇到了类似的问题,并认为蒙版数组比他们需要的更复杂。

我的解决方案是将numpy.inf值放在我缺少数据的任何位置,然后在调用'o-'时使用matplotlib.pyplot.plot选项。这将使您在没有数据的地方打破行,但如果您的每一侧都有一个缺少数据的单个数据点,则会得到一个圆圈。

唯一的缺点是你最终会在线上的每个点都有圆圈,所以它可能不是很漂亮。