私はnoobです。最新のCSVをとり、matplotlibでグラフをプロットするスクリプトを作成しました。しかし、私の日付は、時間、分、秒を表示していると私はミリ秒と思います。しかし、CSVでは、私は年、月、日、時、分、秒を持っています。 CSVのように日付を表示するには、どのようにしてコードを簡単に調整するのですか?CSVデータのようにmatplotlibの日付マーカーを作成するにはどうすればよいですか?
Pythonスクリプト:
from matplotlib import pyplot, dates
from csv import reader
from dateutil import parser
import os
import time
import pylab
import datetime
from datetime import datetime
os.chdir('/home/pi/csvdata')
def plotloop():
for plotinsideloop in range(24):
dated_files = [(os.path.getmtime(fn), os.path.basename(fn))
for fn in os.listdir("/home/pi/csvdata") if fn.lower().endswith('.csv')]
dated_files.sort()
dated_files.reverse()
newest = dated_files[0][1]
with open(newest) as f:
data = list(reader(f))
humidity = [i[1] for i in data]
dates1 = [i[0] for i in data]
dates = [datetime.strptime(i, '%X %x') for i in dates1]
pyplot.ylim(50,1000)
pyplot.xticks(rotation=15)
pyplot.plot(dates, humidity)
pyplot.savefig("test.png", dpi=72)
pyplot.savefig("test.pdf")
print ("Done")
print(newest)
time.sleep(5)
plotloop()
私のCSVデータ:
3/19/2017 12:01 593
3/19/2017 12:01 593
3/19/2017 12:01 594
3/19/2017 12:01 593
3/19/2017 12:01 593
マイグラフ:Excelで
CSVのスクリーンショット:
を参照してください。誰かがいつでもそれを必要とするなら、これは私の作業コードですhttp://pastebin.com/NfWmyffQ – GamerDude