我在下面绘制多索引数据框时遇到问题,
由于某些原因,我无法使用m04hour.inde x范围值。

output from m04hour.head()

但是,此plot命令可以正常工作:

m04hour['consumption (kWh)'].plot(figsize=(12,2))


但是这个没有:

fig,ax = plt.subplots(figsize=(8,4))
ax.plot(m04hour.index, m04hour['consumption(kWh)'],c='red',lw=1,label='queens')


因为“ m04hour.index”返回错误:

ValueError: setting an array element with a sequence.


因此,问题是如何参考m04hour.index值来设置绘图x轴?

最佳答案

您在此m04hour中的索引不是pd.MultiIndex。它是带有元组的索引。
首先,让我们将该元组列表转换为pd.MultiIndex。

df.index = pd.MultiIndex.from_tuples(df.index)

fig,ax = plt.subplots(figsize=(8,4))
ax.plot(m04hour.index.get_level_values(1), m04hour['consumption(kWh)'],c='red',lw=1,label='queens')


输出:

python - python从多索引数据框绘图-LMLPHP

关于python - python从多索引数据框绘图,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49532838/

10-12 16:29