python - 如何将日期作为图表的限制
问题描述
几周前,我编写了这段代码,该代码可以正常工作,但与此同时我不得不重新安装 Anaconda,现在它不再工作了。我不明白为什么现在会发生此错误。我的数据框的索引包含日期。感谢您的帮助 !
当我写:
plt.figure(figsize=(13,10))
from matplotlib import cycler
colors = cycler('color',
['#FFBBBB', '#3388BB', '#9988DD',
'#EECC55', '#88BB44', '#EE6666'])
plt.rc('axes', facecolor='#E6E6E6', edgecolor='none',
axisbelow=True, grid=True, prop_cycle=colors)
plt.rc('grid', color='w', linestyle='solid')
plt.rc('xtick', direction='out', color='gray')
plt.rc('ytick', direction='out', color='gray')
plt.rc('patch', edgecolor='#E6E6E6')
plt.rc('lines', linewidth=2)
plt.subplot(3, 1, 1)
l1 = plt.plot(data.index, data["E153"])
l2 = plt.plot(data.index, data["E159"])
l3 = plt.plot(data.index, data["E161"])
l4 = plt.plot(data.index, data["T13"])
l5 = plt.plot(data.index, data["T21"])
l6 = plt.plot(data.index, data["T22"])
plt.xlim(("1999-05-01","1999-11-30"))
plt.ylim(-0.1, 1.5)
plt.grid(True)
plt.subplot(3, 1, 2)
plt.plot(data.index, data["E153"])
plt.plot(data.index, data["E159"])
plt.plot(data.index, data["E161"])
plt.plot(data.index, data["T13"])
plt.plot(data.index, data["T21"])
plt.plot(data.index, data["T22"])
plt.xlim(("2000-05-01","2000-11-30"))
plt.ylim(-0.1, 1.5)
plt.grid(True)
plt.subplot(3, 1, 3)
plt.plot(data.index, data["E153"])
plt.plot(data.index, data["E159"])
plt.plot(data.index, data["E161"])
plt.plot(data.index, data["T13"])
plt.plot(data.index, data["T21"])
plt.plot(data.index, data["T22"])
plt.xlim(("2001-05-01","2001-11-30"))
plt.ylim(-0.1, 2)
plt.grid(True)
line_labels = ["E153", "E159", "E161", "T13", "T21", "T22"]
plt.figlegend([l1, l2, l3, l4, l5, l6],
labels= line_labels,
loc="center right",
bbox_to_anchor=(1.1, 0.5),
title="Légende")
plt.tight_layout()
plt.show()
它说 :
ConversionError: Failed to convert value(s) to axis units: '1999-05-01'
解决方案
如果您的 x 轴是日期,您需要执行以下操作:
plt.xlim((pd.to_datetime("1999-05-01"),pd.to_datetime("1999-11-30")))
你的其他.xlim()
电话也是如此。
推荐阅读
- sql - 命名“状态”字段的最佳实践
- java - 如何将war文件和自定义配置添加到wildfly docker镜像?
- sql-server - 按每组的最小值排序
- sql - 为什么只在索引表中读取速度更快而不写入?
- typescript - 如何在 TypeScript 中声明包含扩展某些类型的元素的集合?
- php - PHP array_column() 可能为空列
- reactjs - 为什么我在我的状态下得到一个空数组?
- javascript - 我怎样才能只打印字母?
- service-worker - 简单的 Service Worker 通知单击不起作用
- database - sqlite 是否总是在表的末尾插入新记录?