0
我想减少x tick标记的频率。 x值是日期:使用python设置xticks标签频率
date=['20120101','20120101','20120101',...'20121231']
我有24个时间步骤,每年的每一天。我想每隔24个时间步骤(即每天)标记xticks。
这里是我使用的代码:
date=[]
val=[]
for lig in file(liste.txt):
ligne=lig.split('')
date.append(ligne[0])
val.append(ligne[1])
plt.plot(date,val)
plt.setp(plt.gca().xaxis.get_majorticklabels(),rotation=90)
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%y%m%d'))
plt.gca().xaxis.set_major_locator(mdates.DayLocator(interval=4))
plt.show()
这里是我的情节,没有xticks标签!
我想补充一点,文档明确指出格式字符串必须符合['strftime'](http://strftime.org/) –
我已经完成了我的示例。当我添加日期= datetime.datetime.strftime(日期,'%y%m%d'),它返回描述符'strftime'需要'datetime.date'对象,但收到'列表' – user5276228
首先,这不是我称之为工作示例。有两个拼写错误:'plt.gca()。xaxix。(...)'和'dateFormatter('%y%m%d')',都会导致一个'Attribute error'。其次,看起来你必须分开处理每个元素,例如创建第二个空列表'date2 = []',然后用'for datem'填入它:date2.append(datetime.datetime.strptime(itm,'%Y%m%d')) '。你必须绘制'date2'而不是'date',然后,这是一个不幸的变量名称。 (我敢肯定,还有更多pythonic的写法!我没有使用lambda函数的经验。) – nostradamus