我试着绘制一个样本中的污染物,随着时间的推移,一些样本日期更接近。如何用当前的日期时间值绘制这一行,但使每个xtick等距?
到目前为止,这就是我所得到的结果,目前,当样本被更接近的时候,蜱被聚集在一起。
date = df_TCE.SAMPLEDATE.unique()
date_IA14 = df_TCE.SAMPLEDATE[df_TCE.SYS_LOC_CODE == 'IA-14']
IA14 = df_TCE.AL_RESULT_VALUE[df_TCE.SYS_LOC_CODE == 'IA-14']
plt.plot(date_IA14, IA14)
plt.title('TCE Time Series')
plt.xlabel('Date')
plt.ylabel('Contaminant Level')
ax = plt.subplot()
ax.set_xticks(date_IA14)
ax.set_yticks([1, 2, 3, 4, 5, 6, 7])
ax.set_facecolor('seashell')
plt.show()这是一组蜱的输出:
发布于 2019-09-16 22:32:26
有几件事你可以试试。
首先,通过运行SAMPLEDATE,确保名为pandas.to_datetime(df_TCE.SAMPLEDATE)的dataframe系列是datetime对象。解决出现的任何解析错误,这样您才能真正地处理日期时间x轴而不是字符串。
然后,查看fig.autofmt_xdate()而不是ax.set_xticks(date_IA14)。一旦我们的x轴填充了适当的日期时间对象,matplotlib就足够聪明,可以让我们得到合理的x抽签间隔。
如果不喜欢默认设置,请查看matplotlib.dates.DayLocator()或HourLocator()或MonthLocator(),只要满足常规间隔需要即可。您可以将它应用于您的axes对象,如:ax.xaxis.set_major_locator(matplotlib.dates.DayLocator())
https://stackoverflow.com/questions/57965069
复制相似问题