我写入字典的数据有以下形式:
observed [place_id][date][time] = value_observed
simulated [place_id][date][time] = value_simulated
总共有200个place_ids和日期涵盖1年(365天),每个日期(或日期)涵盖24小时的数据,如下所示为一天的一个网站:
observed ['11A346']['2009-08-07']{'19:00': 0.031125, '12:00': 0.028375, '06:00': 0.022249999999999995, '00:00': 0.03425, '23:00': 0.027749999999999997, '05:00': 0.023624999999999997, '11:00': 0.027125, '14:00': 0.031375, '04:00': 0.025124999999999998, '09:00': 0.022375000000000003, '03:00': 0.0265, '18:00': 0.0315, '01:00': 0.033125, '21:00': 0.029124999999999998, '15:00': 0.032625, '22:00': 0.028374999999999997, '08:00': 0.022, '16:00': 0.03275, '02:00': 0.031375, '13:00': 0.030000000000000002, '20:00': 0.03025, '07:00': 0.021749999999999995, '17:00': 0.032125, '10:00': 0.023125}
我希望绘制"观察到的"的时间序列。和"模拟"每小时的数据匹配,以及选定的天数子集。现在我正在通过for循环将数据写入列表并将日期记录到另一个列表并绘制这些列表。有没有其他方法可以更容易地做到这一点,即直接从词典中绘图?
感谢任何反馈。
由于
答案 0 :(得分:0)
这取决于你的绘图库所期望的,而不是使用for循环将日期和值写入列表,你应该只调用keys()和values()方法,它们都将返回键列表和价值分别。如果您的绘图库像matplotlib一样工作并且需要一个x值列表和一个y值列表,那么您可以执行以下操作:
d = observed['11A346']['2009-08-07']
plt.plot(d.keys(), d.values())