我正在尝试从图表上的列表中绘制数据。我的数据是2GB的文件,其中填充了这些列表。列表的一个示例是:
[datetime.datetime(2009, 4, 15, 21, 58, 14), 0]
完整代码为:
with open('newdata.txt') as f:
for line in f:
tweet=re.sub(r'T\t',"",line)
t=re.sub(r'W\t',"\/\/",tweet)
data=t.split("\/\/")
sentiment_value= s.sentiment(data[1])
data.append(sentiment_value)
words = [w.replace('pos', '1') for w in data]
word=[w.replace('neg','0')for w in words]
del word[1]
word[1]=int(word[1])
word[0]=datetime.strptime(word[0],'%Y-%m-%d %H:%M:%S ')
print(word)
绘制数据:
values= (word)
ax = plt.subplot(111)
ax.plot_date([value[0] for value in values], [value[1] for value in values], "-o")
plt.show()
但是出现以下错误:
TypeError: 'datetime.datetime' object is not subscriptable
我尝试这样做:
word[0]=matplotlib.dates.date2num(word[0])
但是我得到了这个错误:
TypeError: 'float' object is not subscriptable
如何将列表绘制在图形上,使每个列表成为一个点?