Matplotlib限制行从CSV绘制

时间:2016-04-06 11:07:30

标签: python csv numpy matplotlib

我目前正以当前格式记录从传感器到CSV文件的温度和湿度级别: -

2016-04-05 20:21:39,15.50,49.30
2016-04-05 20:22:40,15.50,49.30
2016-04-05 20:23:40,15.40,49.30
2016-04-05 20:24:41,15.40,49.40

然后我使用numpy.loadtxt读取要绘制的值: -

dates, temp = np.loadtxt('templog.csv',
                         converters={0: datefunc},
                         unpack=True,
                         delimiter=',',
                         usecols=(0, 1))

dates2, humid = np.loadtxt('templog.csv',
                           converters={0: datefunc},
                           unpack=True,
                           delimiter=',',
                           usecols=(0, 2))

这一切都很好,但它从一开始就绘制了每个指标。我想限制要绘制的'x'最后一行数,以便让我在最后24小时内完成。例如。

这是否可以使用CSV文件作为源,或者我最好将数据插入到sqlite3数据库中,然后使用适当的选择查询来提取我想要的数据并绘制。

1 个答案:

答案 0 :(得分:0)

您可以按原样保存数据。只要你喜欢限制绘图。

import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot_date(dates, temp)
ax.set_xlim(['yyyy-mm-dd hh:mm:dd', 'YYYY-MM-DD HH:MM:DD'])