首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >绘制半小时频率的x标记

问绘制半小时频率的x标记
EN

Stack Overflow用户
提问于 2017-09-16 14:12:09
回答 1查看 2K关注 0票数 1

我想要X标签就像:

代码语言:javascript
复制
00:00    00:30    01:00    01:30    02:00 ...... 23:30

我的代码:

代码语言:javascript
复制
import matplotlib.pyplot as plt
import pandas as pd
import matplotlib.dates as mdates
import random

data = [random.random() for i in range(48)]
times = pd.date_range('16-09-2017', periods=48, freq='30MIN')

fig, ax = plt.subplots(1)
fig.autofmt_xdate()
plt.plot(times, data)

xfmt = mdates.DateFormatter('%H:%M')
ax.xaxis.set_major_formatter(xfmt)

plt.show()

但我的X标签是这样的:

​

​

有什么问题吗?我有48个值,每个值代表一天半小时的值。

EN

回答 1

Stack Overflow用户

发布于 2017-09-16 14:54:19

您可以使用MinuteLocator并每0分钟和30分钟显式设置一次。

代码语言:javascript
复制
minlocator = mdates.MinuteLocator(byminute=[0,30]) 
ax.xaxis.set_major_locator(minlocator)

并将其清理干净--去除多余的滴答记号,并填空。

代码语言:javascript
复制
xticks = ax.get_xticks()
ax.set_xticks(xticks[2:-2]);
hh = pd.Timedelta('30min')
ax.set_xlim(times[0] - hh, times[-1] + hh)

​

​

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46254816

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档