如何解决Matplotlib动画子图
我正在尝试创建matplotlib子图,这些子图会随着实时数据的进入而动画化(在tkinter python应用程序的较大框架内)。我能够使动画功能在正常图上正常工作,但是随后当我修改了子图的代码时,该行为变得很奇怪-一次会打开大量窗口,只有一个子图填充。 / p>
def showAnimatedValues():
ani = FuncAnimation(plt.gcf(),animate,2000)
plt.show()
def animate(self,analyzed=False):
alldates = []
alldata=[]
for device_data in fetched:
data=[]
dates=[]
for tup in device_data:
if analyzed:
global device
device=str(tup[0])
data.append(data_analysis(float(tup[1])))
else:
data.append(float(tup[1]))
date=tup[2]
formatted_date=reverse_formatter(date)
formatted_date-=timedelta(hours=4)
dates.append(str(formatted_date))
alldates.append(dates)
alldata.append(data)
if len(alldates)>1:
plt.cla()
fig,axs = plt.subplots(len(alldates),squeeze=True)
fig.suptitle('Raw Live Current Data for Selected Devices')
for i in range(len(alldates)):
axs[i].plot(alldates[i],alldata[i])
axs[i].get_xaxis().set_visible(False)
axs[i].set_title(str(devices[i]))
else:
plt.cla()
plt.plot(alldates[0],alldata[0])
plt.title('Raw Live Current Data for Selected Device')
plt.title(str(devices[0]),loc='right')
plt.gca().axes.get_xaxis().set_visible(False)
button1 = tk.Button(text='Fetch Data ',command=getValues)
button2 = tk.Button(text='Plot Raw Data ',command=showValues)
button3 = tk.Button(text='Plot Analyzed Data ',command=showAnalyzedValues)
button4 = tk.Button(text='Plot Live Raw Data ',command=showAnimatedValues)
button5 = tk.Button(text='Plot Live Analyzed Data ',command=showAnimatedAnalyzedValues)
canvas1.create_window(300,180,window=button1)
canvas1.create_window(400,window=button2)
canvas1.create_window(520,window=button3)
canvas1.create_window(645,window=button4)
canvas1.create_window(780,window=button5)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。