2016-01-06 119 views
2

绘制熊猫系列时我遇到了一个问题。 当日期时间x轴绘制系列,x轴缩放时相应地重新标记,即它工作正常:,熊猫情节x轴标签

from matplotlib import pyplot as plt 
from numpy.random import randn 
from pandas import Series,date_range 
import numpy as np, pandas as pd 
date_index = date_range('1/1/2016', periods=6*24*7, freq='10Min') 
ts = Series(randn(len(date_index)), index=date_index) 
ts.plot(); plt.show() 

然而,当我重新定义了一系列的指数为字符串,奇怪的事情发生了,变焦无法正常工作了(限制似乎没有改变)

sindex=np.vectorize(lambda s: s.strftime('%d.%m %H:%M'))(ts.index.to_pydatetime()) 
ts = Series(randn(len(date_index)), index=sindex) 
ts.plot(); plt.show() 

这是bug还是我滥用/误解?建议/帮助将非常受欢迎。

我也注意到,有一种=“酒吧”阴谋是相对默认慢得令人难以置信(较长的载体),我不知道会是什么的起源......

回答

0

当你格式化日期标签作为字符串之前,你失去了所有的实际日期信息;他们现在只是字符串。这意味着当您缩放时,pandas/matplotlib无法重新格式化刻度标签。看到剧情here后的第一段。

对于第二个问题,条形图会绘制每个数据点的勾号和条形图。对于大型系列,这会变得昂贵。此时大熊猫条形图不像挂图那样被自动格式化。你可以直接用matplotlib做一个条形图,然后自己去压缩一些tick。

+0

感谢您的回复。那么这是一个错误,不会重新调整刻度标签。希望这会改变某些日子。 – mats1