【发布时间】:2012-10-17 20:30:44
【问题描述】:
我正在尝试如下更新 matplotlib 图:
import matplotlib.pyplot as plt
import matplotlib.dates as mdate
import numpy as np
plt.ion()
fig = plt.figure()
ax = fig.add_subplot(111)
for i,(_,_,idx) in enumerate(local_minima):
dat = dst_data[idx-24:idx+25]
dates,values = zip(*dat)
if i == 0:
assert(len(dates) == len(values))
lines2d, = ax.plot_date(mdate.date2num(dates), np.array(values), linestyle='-')
else:
assert(len(dates) == len(values))
lines2d.set_ydata(np.array(values))
lines2d.set_xdata(mdate.date2num(dates)) #This line causes problems.
fig.canvas.draw()
raw_input()
第一次循环时,情节显示得很好。第二次通过循环,我的情节上的所有数据都消失了——如果我不包括lines2d.set_xdata 行,一切正常(当然,x 数据点是错误的除外)。我看过以下帖子:
How to update a plot in matplotlib?
和
但是,在这两种情况下,用户只更新ydata,我也想更新xdata。
【问题讨论】:
标签: python matplotlib