Насколько я понимаю, вы хотите интерактивно обновить свой сюжет. Если это так, вы можете использовать график вместо графика рассеяния и обновлять данные вашего графика следующим образом.
import numpy
import matplotlib.pyplot as plt
fig = plt.figure()
axe = fig.add_subplot(111)
X,Y = [],[]
sp, = axe.plot([],[],label='toto',ms=10,color='k',marker='o',ls='')
fig.show()
for iter in range(5):
X.append(numpy.random.rand())
Y.append(numpy.random.rand())
sp.set_data(X,Y)
axe.set_xlim(min(X),max(X))
axe.set_ylim(min(Y),max(Y))
raw_input('...')
fig.canvas.draw()
Если это поведение, которое вы ищете, вам просто нужно создать функцию, добавляющую данные sp и получить в этой функции новые точки, которые вы хотите построить (с управлением ввода-вывода или любым другим процессом, который вы используете). Надеюсь, это поможет.