我正在寻找编辑x轴日期的格式。下图显示了它们默认情况下在条形图上的显示方式。我想删除'Dec'和'2012'的重复,并且只是沿着x轴有实际的日期编号。在matplotlib中编辑x轴刻度标签的日期格式
有关我如何做到这一点的任何建议?
我正在寻找编辑x轴日期的格式。下图显示了它们默认情况下在条形图上的显示方式。我想删除'Dec'和'2012'的重复,并且只是沿着x轴有实际的日期编号。在matplotlib中编辑x轴刻度标签的日期格式
有关我如何做到这一点的任何建议?
简而言之:
import matplotlib.dates as mdates
myFmt = mdates.DateFormatter('%d')
ax.xaxis.set_major_formatter(myFmt)
的matplotlib网站上的许多例子。我最常用的是here
是否有一种不使用'ax.xaxis'但使用'plt的替代方法。
@ 3kstc也许,但我无法想象一种情况,即对更明确的命令不情愿依赖状态机。 – 2017-06-16 15:56:12
要快速查看所有可能的日期时间格式,请使用[strftime.org](http://strftime.org)。 – ImportanceOfBeingErnest 2018-02-08 19:14:14
尽管Paul H给出的答案显示了重要部分,但它并不是一个完整的例子。另一方面matplotlib example似乎相当复杂,并没有显示如何使用天。
所以每个人都需要在这里是一个完整的工作示例:
from datetime import datetime
import matplotlib.pyplot as plt
from matplotlib.dates import DateFormatter
myDates = [datetime(2012,1,i+3) for i in range(10)]
myValues = [5,6,4,3,7,8,1,2,5,4]
fig, ax = plt.subplots()
ax.plot(myDates,myValues)
myFmt = DateFormatter("%d")
ax.xaxis.set_major_formatter(myFmt)
## Rotate date labels automatically
fig.autofmt_xdate()
plt.show()
这里的答案为我工作:http://stackoverflow.com/questions/30133280/pandas-bar-plot-changes-date -format – Mahdi 2016-09-21 08:53:30