用Gridspec绘图:索引超出范围

时间:2015-06-03 14:35:40

标签: python matplotlib

之前我使用了很多gridspec,但今天我有一个我从未有过的错误。这是一个代码示例,取自pandas plotting example page:

import pandas as pd
from pandas import *
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec

ts = pd.Series(np.random.randn(1000), index=pd.date_range('1/1/2000', periods=1000))
ts = ts.cumsum()

df = pd.DataFrame(np.random.randn(1000, 4), index=ts.index, columns=list('ABCD'))
df = df.cumsum()

df3 = pd.DataFrame(np.random.randn(1000, 2), columns=['B', 'C']).cumsum()
df3['A'] = pd.Series(list(range(len(df))))

gs = gridspec.GridSpec(5,1)
fig = plt.figure(figsize=(6, 6), facecolor='white')
ax = fig.add_subplot(gs[:4, :])
ax2 = fig.add_subplot(gs[4, :])

df3.plot(x='A', y='B', ax=ax2)

虽然它正在绘图,但我有一个错误会停止程序:

  

---> 21 df3.plot(x =' A',y =' B',ax = ax2)

     

IndexError:索引4超出了轴0的大小为3的范围

enter image description here

注意:错误消息中的index 4直接链接到gridspec限制。如果我删除了gridspec,那么该图表效果很好。

熊猫版:0.16.1

Matplotlib版本:1.4.3

0 个答案:

没有答案