如何在matplotlib中将x轴时间数据从“月小时”(mm-dd HH)格式化为“小时”?或者如何将小时数据放置在辅助轴上?

时间:2019-01-08 23:49:38

标签: python pandas matplotlib

我正在尝试更改x轴时间数据格式。目前,x轴显示“月日小时”,我只希望它报告小时数,最好不要报告军事时间。

以下是参考图:

https://imgur.com/d8XctpU

以及该图的代码:

import datetime
import matplotlib.dates as md
plt.style.use('default')
from scipy.ndimage.filters import gaussian_filter1d  

fig = plt.figure(figsize=(15, 4))  
x = df1['Time']
y = df1['BG']
plt.xlabel('Time (hours/minutes)', fontsize = 'large')
plt.ylabel('Blood Glucose (mg/dL)', fontsize = 'large')
plt.title('Personal Metabolic Map - Day 1', fontsize = 'large')


ysmoothed = gaussian_filter1d(y, sigma=2)
plt.plot(x, ysmoothed, linewidth = 2.0)


axes = plt.gca() 
axes.set_ylim([70,200]) 

plt.grid(color = 'k', linestyle = '--', linewidth = 1.0) 
plt.grid(b=True, which = 'minor', color = 'k', linestyle = ':') 
axes.xaxis.set_minor_locator(md.MinuteLocator(interval=15)) 
fig.autofmt_xdate() 

我尝试将主要定位符添加到60分钟:

axes.xaxis.set_major_locator(md.MinuteLocator(interval=60))

但这是我得到的结果。...

https://imgur.com/2NmtoDz

值得一提的是,我从数据帧(“时间”)中提取的时间数据在datetime64 [ns]中。

任何帮助将不胜感激,因为我并不是真正的程序员,并且刚刚开始尝试学习python以进行数据处理和可视化。

谢谢!

我希望x轴为“ HH”,但实际输出为“年”。<​​/ p>

0 个答案:

没有答案