【发布时间】:2015-07-06 00:49:45
【问题描述】:
我不熟悉 Python 中的 matplotlib。我想要实现的是使用文本文件随时间绘制数据,该文本文件每隔一定时期接收新数据。
文本文件格式如下:
数据,时间
1,2015-07-05 11:20:00
到目前为止我所拥有的:
import matplotlib.pyplot as plt
import matplotlib.dates as md
import dateutil
pullData = open('sampleText.txt', 'r').read()
dataArray = pullData.split('\n')
datestrings = []
plt_data = []
for eachLine in dataArray:
if len(eachLine)>1:
y,x = eachLine.split(',')
plt_data.append(int(y))
datestrings.append(x)
dates = [dateutil.parser.parse(s) for s in datestrings]
plt.subplots_adjust(bottom=0.2)
plt.xticks( rotation=25 )
ax=plt.gca()
ax.set_xticks(dates)
xfmt = md.DateFormatter('%m-%d %H:%M')
ax.xaxis.set_major_formatter(xfmt)
plt.plot(dates,plt_data, "o-")
plt.show()
这几乎是我可以通过不同的教程/以前的问题得到的。
如您所见,此代码适用于随着时间的推移绘制数据,但我不明白如何调整它以使图表使用新数据自行更新。
【问题讨论】:
-
@tom10 你说得对,我刚刚编辑了我的问题。谢谢。
-
现在很清楚了。谢谢。我删除了我的原始评论,因为我认为您首先以通常理解的方式使用“实时”,所以现在我的原始评论只是令人困惑。
标签: python matplotlib