使用matplotlib更改绘图中的X轴范围值

2024-10-04 09:20:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在做一个数据帧的绘图。在

df_no_missing.head()
TIMESTAMP        datetime64[ns]
P_ACT_KW                float64
PERIODE_TARIF            object
P_SOUSCR                float64
SITE                     object
TARIF                    object
depassement             float64
dtype: object


Out[236]:

    TIMESTAMP P_ACT_KW PERIODE_TARIF P_SOUSCR SITE TARIF depassement date time

    2015-08-01 23:10:00 248.0 HC 425.0 ST GEREON TURPE_HTA5 0.0 2015-08-01 23:10:00 


    2015-08-01 23:20:00 244.0 HC 425.0 ST GEREON TURPE_HTA5 0.0 2015-08-01 23:20:00 


    2015-08-01 23:30:00 243.0 HC 425.0 ST GEREON TURPE_HTA5 0.0 2015-08-01 23:30:00 


    2015-08-01 23:40:00 238.0 HC 425.0 ST GEREON TURPE_HTA5 0.0 2015-08-01 23:40:00 

    2015-08-01 23:50:00 234.0 HC 425.0 ST GEREON TURPE_HTA5 0.0 2015-08-01 23:50:00 

我画了一个图,用时间戳表示p_ACT_KW和p_SOUSCR的变化。 python代码如下:

^{pr2}$

我得到了一个这样的图(附图)enter image description here

我的问题是如何在xaxis中显示时间戳,我的意思是我需要查看数据帧中指示的时间戳,例如:23:10:00、23:20:00、23:30:00、23:40:00、23:50:00。不是01:00,04:00,07:00。。。在

如果你能帮我,谢谢你

最佳


Tags: 数据hcobject时间acttimestampstkw
1条回答
网友
1楼 · 发布于 2024-10-04 09:20:49

您可以在^{之前添加set_major_locator

import matplotlib.dates as mdates

yearFmt = mdates.DateFormatter("%H:%M:%S")

minx = pd.to_datetime( '2015-08-01 23:10:00' )
minx = pd.to_datetime( '2015-08-01 23:50:00' )

ax.set_xlim( [ minx, maxx ] )
ax.xaxis.set_major_locator( mdates.MinuteLocator(byminute=range(0,60,10)) )  
ax.xaxis.set_major_formatter( yearFmt )

相关问题 更多 >