subplotting时如何解决'numpy.ndarray' object has no attribute 'get_figure'错误?
How to solve 'numpy.ndarray' object has no attribute 'get_figure' error when subplotting?
我想使用子图绘制所有无数据帧的 'oran' 列。
数据包含 'oran' 列。
这是我的代码;
fig, axes = plt.subplots(6,2, figsize=(20,20))
for ax in axes:
for month in dftm.month_base_valor.unique():
temp = dftm[dftm.month_base_valor.eq(month)]
#display(temp)
temp.oran.plot(ax=ax)
fig.tight_layout()
但是这段代码给我错误
'numpy.ndarray' 对象没有属性 'get_figure'
我找不到解决这个问题的方法。
我怎样才能避免这个错误?
数据集的前5行
month_base_valor aylık_total valor_tarihi gunluk_total oran year
0 2017-01 11111.50 20170102 11111.37 0.00 2017
1 2017-01 11111.50 20170103 11111.66 0.00 2017
2 2017-01 11111.50 20170104 11111.97 0.00 2017
3 2017-01 11111.50 20170105 11111.09 0.01 2017
4 2017-01 11111.50 20170106 11111.74 0.01 2017
问题是 axes
是一个二维数组(形状 (6,2)
)。
循环for ax in axes: ...
从中选择一维数组(形状(2,)
)。将此数组作为 ax
-kwarg 传递给 temp.oran.plot(ax=ax)
会导致相应的错误。
使用 for ax in axes.flat: ...
应该可以。
我想使用子图绘制所有无数据帧的 'oran' 列。
数据包含 'oran' 列。
这是我的代码;
fig, axes = plt.subplots(6,2, figsize=(20,20))
for ax in axes:
for month in dftm.month_base_valor.unique():
temp = dftm[dftm.month_base_valor.eq(month)]
#display(temp)
temp.oran.plot(ax=ax)
fig.tight_layout()
但是这段代码给我错误 'numpy.ndarray' 对象没有属性 'get_figure'
我找不到解决这个问题的方法。 我怎样才能避免这个错误?
数据集的前5行
month_base_valor aylık_total valor_tarihi gunluk_total oran year
0 2017-01 11111.50 20170102 11111.37 0.00 2017
1 2017-01 11111.50 20170103 11111.66 0.00 2017
2 2017-01 11111.50 20170104 11111.97 0.00 2017
3 2017-01 11111.50 20170105 11111.09 0.01 2017
4 2017-01 11111.50 20170106 11111.74 0.01 2017
问题是 axes
是一个二维数组(形状 (6,2)
)。
循环for ax in axes: ...
从中选择一维数组(形状(2,)
)。将此数组作为 ax
-kwarg 传递给 temp.oran.plot(ax=ax)
会导致相应的错误。
使用 for ax in axes.flat: ...
应该可以。