Matplotlib时间轴连续小时

时间:2018-03-23 14:48:58

标签: python-3.x matplotlib

我想以这样的方式格式化我的x轴"%H:%M"但是连续几小时(例如2天= 48:00)就像这个例子一样:

我多么希望

How I want it

我能做的最接近的尝试是这个例子:

怎么样

How it is 但是时间不会持续。 这是我的简单代码片段:

import matplotlib.pyplot as plt
import matplotlib.dates as md
import numpy as np

dataY = np.array([0,1,2,3,4,5,6,7,8,9])
dataX = np.array([0.1,0.5,0.8,1.2,1.3,1.6,1.9,2.1,2.2,2.5]) #Time values like in Excel 1h = 1/24

dataX = dataX +1 #Otherwise it says Error, time values <1
fig, ax = plt.subplots()
timeformat = md.DateFormatter('%H:%M')
plt.Axes.format_xdata = timeformat
ax.xaxis_date()
ax.xaxis.set_major_formatter(timeformat)
plt.xlim(1,4)

plt.plot(dataX,dataY)
plt.ylabel('Y-Values')
plt.xlabel('Time [hh:mm]')

plt.show()

非常感谢提前

1 个答案:

答案 0 :(得分:2)

您没有在此处绘制任何实际日期。因此,不尝试将这些值格式化为日期是有意义的。相反,请按原样绘制数字并使用您选择的自定义格式。

src

enter image description here