pandas plot x-axis label

时间:2016-01-06 13:43:02

标签: python pandas plot axis-labels

在绘制大熊猫系列时遇到了问题。 当使用日期时间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()

这是一个错误还是我误用/误解了?建议/帮助将非常受欢迎。

我还注意到用善意绘图=' bar'比较默认的速度相当缓慢(向量较长),我不确定它的起源是什么......

1 个答案:

答案 0 :(得分:0)

在绘图之前将日期标签格式化为字符串时,会丢失所有实际日期信息;他们现在只是字符串。这意味着当您缩放时,pandas / matplotlib无法重新格式化刻度标签。请参见情节here之后的第一段。

对于第二个问题,条形图将为每个数据点绘制一个勾选和条形图。对于大型系列,这会变得昂贵。此时大熊猫条形图并没有像剧情一样挂钩到自动格式化中。你可以直接用matplotlib做一个条形图,并自己压制一些蜱。