Python Seaborn-Figur speichern
In diesem Tutorial werden wir diskutieren, wie eine seegeborene Figur in einer externen Datei gespeichert wird.
Wir werden die Funktion matplotlib.pyplot.savefig()
verwenden, die es in eine externe Datei exportieren kann.
Wir müssen den Dateinamen zusammen mit seinem Format und dem Pfad der Datei in der Funktion selbst angeben.
Beispielsweise,
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.DataFrame(
{"Day 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day 2": [1, 2, 8, 4, 3, 9, 5, 2]}
)
sns.lineplot(data=df)
plt.savefig("filename.png")
Wir können andere Dateiformate wie jpeg
, png
und mehr angeben. Wir können den Plot auch in Nicht-Bildformaten wie PDF speichern.
Wir können die endgültige Zahl auch mit verschiedenen Argumenten anpassen.
Zum Beispiel können wir das Argument dpi
in der Funktion angeben. Das dpi
bedeutet Punkte pro Zoll, sodass ein höherer Wert zu einer höheren Auflösung des endgültigen Bildes führt.
Beispielsweise,
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.DataFrame(
{"Day 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day 2": [1, 2, 8, 4, 3, 9, 5, 2]}
)
sns.lineplot(data=df)
plt.savefig("filename.png", dpi=300)
Wenn wir möchten, können wir die Ausrichtung mit dem Parameter orientation
ändern. Die Ausrichtung ist standardmäßig “Hochformat”.
Im folgenden Code speichern wir die endgültige Figur im Querformat.
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.DataFrame(
{"Day 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day 2": [1, 2, 8, 4, 3, 9, 5, 2]}
)
sns.lineplot(data=df)
plt.savefig("filename.png", orientation="horizontal")
Weitere verfügbare Argumente sind transparent
, frameon
, facecolor
und edgecolor
. Sie bieten weitere Anpassungen für die endgültig exportierte Figur.
Beachten Sie, dass bei neueren Versionen von seaborn die direkte Verwendung der Funktion savefig()
bei einigen Plots zu Fehlern führen kann. In solchen Fällen sollten wir auch die Funktion get_figure()
verwenden. Diese Funktion ruft die Instanz der erforderlichen Abbildung ab und kann sie dann mit der Funktion savefig()
exportieren.
Der folgende Code demonstriert dies.
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.DataFrame(
{"Day 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day 2": [1, 2, 8, 4, 3, 9, 5, 2]}
)
splot = sns.lineplot(data=df)
sfig = splot.get_figure()
sfig.savefig("filename.png", orientation="landscape")
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn