在pylab中重新初始化绘图

时间:2013-02-14 10:35:54

标签: python matplotlib

我是使用PyLab的新手。我想绘制一些观点。但是我不想显示先前的点,即作为一个新的点,先前的绘制点将消失,并且将绘制新的点。我搜索了很多,但我找不到如何重新初始化之间的情节。我面临的问题是我可以通过使用来设置当前数字 plt.figure(f1.number)但是在绘制该图中的点之后它会永久改变。

2 个答案:

答案 0 :(得分:4)

plt.hold(False)在开始策划之前会做你想做的事。

hold确定旧的艺术家是否在绘制新的艺术家时。默认设置为保持开启。

# two lines 
plt.figure()
plt.hold(True)
plt.plot(range(5))
plt.plot(range(5)[::-1])

#one line
plt.figure()
plt.hold(False)
plt.plot(range(5))
plt.plot(range(5)[::-1])

通过plt.hold更改它会更改所有(新)轴。您可以通过

更改个人axes的暂停状态
ax = gca()
ax.hold(True)

答案 1 :(得分:1)

使用pylab,pylab.clf()应该清除图形,之后你可以重绘图。

或者,您可以使用set_xdataset_ydata更新数据,这些数据是创建新绘图时返回的轴对象上的方法(使用pylab.plot或{{1 }})。

后者可能是首选,但需要更多的工作。我可以快速找到的一个例子是another SO question