在 Python 中保存 Seaborn 图像
Manav Narula
2021年4月29日
Seaborn
Seaborn Save

在本教程中,我们将讨论如何在外部文件中保存一个 seaborn 图像。
我们将使用 matplotlib.pyplot.savefig()
函数,该函数可以将其导出到外部文件。
我们需要在函数本身中指定文件名及其格式和文件路径。
例如,
Python
pythonCopyimport 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")
我们可以指定其他文件格式,例如 jpeg
、png
等。我们还可以将图以非图像格式(例如 PDF)保存。
我们还可以使用不同的参数来自定义最终图形。
例如,我们可以在函数中指定 dpi
参数。dpi
表示每英寸点数,因此更高的值将导致最终图像的分辨率更高。
例如,
Python
pythonCopyimport 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)
如果需要,可以使用 orientation
参数更改方向。方向默认为 portrait
。
在下面的代码中,我们将最终图形保存为横向。
Python
pythonCopyimport 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")
可用的其他参数包括 transparent
, frameon
, facecolor
, edgecolor
,为最终导出的图形提供更多自定义设置。
请注意,对于最新版本的 seaborn,直接使用 savefig()
函数可能会在某些绘图上产生错误。在这种情况下,我们还应该使用 get_figure()
函数。此函数获取所需图形的实例,然后我们可以使用 savefig()
函数将其导出。
下面的代码演示了这一点。
Python
pythonCopyimport 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")
Enjoying our tutorials? Subscribe to DelftStack on YouTube to support us in creating more high-quality video guides. Subscribe
作者: Manav Narula
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