Этого можно избежать, если использовать объекты matplotlib напрямую, а не полагаться на конечный автомат pyplot
.В качестве дополнительного бонуса у вас будет более четкий и понятный код.
Главное здесь - использовать plt.subplots()
для предварительной настройки всех ваших фигур и осей, а затем явно работать с этимиобъекты и передать их непосредственно функциям морского побережья, которые вы хотите использовать.
x = pd.DataFrame(maindf[missao_unica].value_counts())
fig, axes = plt.subplots(nrows=1, ncols=3, figsize=(20, 12), dpi=200)
fig.subplots_adjust(wspace=0.5)
axes[0].pie(x[missao_unica].tolist(), labels=x.index.tolist(),
autopct='%1.1f%%', shadow=False, startangle=90)
axes[0].set_title('Contagem(%)')
sns.heatmap(x, cmap='inferno_r', ax=axes[1])
axes[1].set_title('Contagem(Valor Absoluto)')
axes[2].set_title('Coeficientes')
sns.countplot(maindf[missao_unica], dodge=None, ax=axes[2])
# note the use raw strings for paths with back-slashes
fig.savefig(r'Imagens\Missões.png')
plt.show()