Python 如何在matplotlib直方图中显示勾号标签?
我通常不使用Matplotlib,我试图在时间序列直方图中绘制一些信息 当我输入数据时,我的直方图工作正常,但我无法让它显示xaxis刻度标签 以下是我的代码(使用占位符数据):Python 如何在matplotlib直方图中显示勾号标签?,python,matplotlib,Python,Matplotlib,我通常不使用Matplotlib,我试图在时间序列直方图中绘制一些信息 当我输入数据时,我的直方图工作正常,但我无法让它显示xaxis刻度标签 以下是我的代码(使用占位符数据): 您正在使用字符串创建x,然后尝试使用datetimes格式化轴,让我们继续使用datatimes,只使用datea变量,而不使用dateb import matplotlib.pyplot as plt import matplotlib.dates as mdates from matplotlib.date
您正在使用字符串创建x,然后尝试使用datetimes格式化轴,让我们继续使用datatimes,只使用
datea
变量,而不使用dateb
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
from matplotlib.dates import HourLocator as HourLocater
import datetime
from datetime import datetime
from datetime import timedelta
now = datetime.today()
timecount = []
for x in range(8):
datea = now-timedelta(hours=x)
dateb = str(datea).split(':')[0]
timecount.append(datea)
fig, ax = plt.subplots(1,1)
ax.hist(timecount, bins=50, color='lightblue')
ax.xaxis.set_major_locator(HourLocater(interval=1))
ax.xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m-%d %H'))
plt.xticks(rotation=90)
plt.show()
输出:
您正在使用字符串创建x,然后尝试使用datetimes格式化轴,让我们继续使用datatimes,只使用
datea
变量,而不是dateb
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
from matplotlib.dates import HourLocator as HourLocater
import datetime
from datetime import datetime
from datetime import timedelta
now = datetime.today()
timecount = []
for x in range(8):
datea = now-timedelta(hours=x)
dateb = str(datea).split(':')[0]
timecount.append(datea)
fig, ax = plt.subplots(1,1)
ax.hist(timecount, bins=50, color='lightblue')
ax.xaxis.set_major_locator(HourLocater(interval=1))
ax.xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m-%d %H'))
plt.xticks(rotation=90)
plt.show()
输出:
是的,这解决了问题,而且很有意义。谢谢,这解决了问题,而且很有意义。谢谢