通过df1,df2,df3的msno.matrix()
获得missingno子图的最简单方法是什么。我已经检查了this issue,并且由于TypeError
'AxesSubplot' object does not support indexing
而导致以下解决方案无法正常工作,并且根据that issue更新了pandas和missingno。
fig = msno.matrix(df)
grid_ax = fig.axes[0]
my_subplots = plt.subplots(2, 2)
my_subplots[0][0] = grid_ax
我在以下代码段中使用过,但未成功。我不知道我该如何ax
撤消:
#Set up the figure
fig, ax = plt.subplots(nrows=1, ncols=2 , figsize=(8,8) , squeeze=False)
plt.subplot(131)
msno.matrix(df1)
plt.subplot(132)
msno.matrix(df2)
plt.subplot(133)
msno.matrix(df3)
plt.savefig('comparison.png')
#plt.tight_layout()
plt.show()
请留下一般的解决方案,我们只需替换不同的df就可以使用它。 祝你晚上愉快
答案 0 :(得分:0)
您的错误:
'AxesSubplot' object does not support indexing
我会尝试在.ax后面取出索引,像这样:
fig = msno.matrix(df)
grid_ax = fig.axes
希望有帮助
答案 1 :(得分:0)
要给Iannes的答案增加一点:missingno文档规定要指定inline=False
,这将导致missingno返回基础matplotlib.figure.Figure
对象。
因此提供的代码应为:
fig = msno.matrix(df, inline=False)
grid_ax = fig.axes