Проблема
Я пытаюсь сохранить графики с помощью seaborn и matplotlib plt.savefig ('. Png'), но происходит то, что графики перезаписываются, даже если имя другое.Я не могу использовать
fig = sns.lineplot(data=totaldf, palette="tab10", linewidth=2.5)
fig.savefig('.png')
, потому что он возвращает:
AttributeError: объект 'AxesSubplot' не имеет атрибута 'savefig'
Как я могу сохранить эти графики без перезаписи?
Код
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
maindf = pd.read_csv('df2.csv')
maindf['M01']=(maindf['M01'].apply(lambda x: x * 27))
maindf['M02']=(maindf['M02'].apply(lambda x: x * 27))
maindf['M03']=(maindf['M03'].apply(lambda x: x * 27))
maindf['M04']=(maindf['M04'].apply(lambda x: x * 27))
maindf['M05']=(maindf['M05'].apply(lambda x: x * 27))
maindf['M06']=(maindf['M06'].apply(lambda x: x * 27))
maindf['M07']=(maindf['M07'].apply(lambda x: x * 27))
maindf['M08']=(maindf['M08'].apply(lambda x: x * 27))
maindf['M09']=(maindf['M09'].apply(lambda x: x * 27))
maindf['M10']=(maindf['M10'].apply(lambda x: x * 27))
maindf['M11']=(maindf['M11'].apply(lambda x: x * 27))
maindf['M12']=(maindf['M12'].apply(lambda x: x * 27))
maindf['M13']=(maindf['M13'].apply(lambda x: x * 27))
maindf['M14']=(maindf['M14'].apply(lambda x: x * 27))
maindf['M15']=(maindf['M15'].apply(lambda x: x * 27))
index=0
totaldf = pd.DataFrame({ 'Pontuacao Total':maindf.sum(axis=1)})
sns.countplot(totaldf['Pontuacao Total'])
plt.savefig("PontuacaoTotalDistPlot.png")
sns.heatmap(totaldf,cmap = 'inferno_r')
plt.savefig('PontuacaoTotalHeatmap.png')
sns.lineplot(data=totaldf, palette="tab10", linewidth=2.5)
plt.savefig('PontuacaoTotalLine.png')
Изображения
Это линейный участок
Тепловая карта