我有一个带有多个数据集的图形。随着数据更新,我需要不断分别重绘这些线。如何重复删除并重新建立它,最好不必每次都删除整个图并重新绘制所有线条?

最佳答案

#!/usr/bin/env python

import time
from pylab import *

ion() # turn interactive mode on

# initial data
x = arange(-8, 8, 0.1);
y1 = sin(x)
y2 = cos(x)

# initial plot
line1, line2, = plot(x, y1, 'r', x, y2, 'b')
line1.axes.set_xlim(-10, 10)
line1.axes.set_ylim(-2, 2)
line1.set_label("line1")
line2.set_label("line2")
legend()
grid()
draw()

# update line 1
for i in xrange(50):
    time.sleep(0.1)

    # update data
    y1 = sin(x + float(i) / 10)

    # update plot
    line1.set_ydata(y1)
    draw()

# update line 2
for i in xrange(50):
    time.sleep(0.1)

    # update data
    y2 = cos(x + float(i) / 10)

    # update plot
    line2.set_ydata(y2)
    draw()

10-06 13:27