我正在尝试绘制以下csv数据。 数据每隔1分钟被勾选一次:
# cat futures-sample.txt | head
2019/05/16-09:15 27830 2031
2019/05/16-09:16 27815 995
2019/05/16-09:17 27829 961
2019/05/16-09:18 27848 663
2019/05/16-09:19 27873 869
2019/05/16-09:20 27847 854
2019/05/16-09:21 27828 784
2019/05/16-09:22 27813 676
2019/05/16-09:23 27828 700
2019/05/16-09:24 27849 665
我希望X轴每隔1小时显示一次。 例如:9:00、10:00、11:00
这是我的代码:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.dates import HourLocator, DateFormatter
df = pd.read_csv('futures-sample.txt', names=['Time', 'HSIF', 'Volume'], delim_whitespace=True)
ax = df.set_index('Time').plot(y='HSIF')
ax.xaxis.set_major_locator(HourLocator())
ax.xaxis.set_major_formatter(DateFormatter('%Y/%m/%d-%H:%M'))
fig = ax.get_figure()
fig.savefig('/var/www/html/temp.png')
但是,该图最终没有显示X标签。 我想念什么吗?
答案 0 :(得分:0)
也许您的Time
列是一个字符串,您可以在parse_dates=['Time']
中使用read_csv
。
df = pd.read_csv('futures-sample.txt', names=['Time', 'HSIF', 'Volume'],parse_dates=['Time'] ,delim_whitespace=True)