保存到 eps 的 Seaborn 图不显示网格

joh*_*und 5 python visualization matplotlib seaborn

我玩了一会儿,无法正确保存用 seaborn 渲染的图。使用 plt.savefig 时,我丢失了网格。但是,使用 plt.show 然后手动保存图形是可行的。eps 和 png 也会发生这种情况。我需要渲染大量的图,所以这是一个问题。

import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns

sns.set(style = 'darkgrid', font_scale=2)
t = np.arange(100)
y = np.random.rand(len(t))
plt.plot(t,y)
plt.title('Test title')
plt.xlabel('Test xlab')
plt.ylabel('Tex $y_i = w_i x_i$')
plt.tight_layout()
#plt.show()
plt.savefig('test_plot.eps', format='eps')
Run Code Online (Sandbox Code Playgroud)

自动保存 自动保存

手动保存 手动保存

joh*_*und 4

解决方案是我的 matplotlibrc 中有“savefig.transparent : True”,我之前出于某种原因需要它。将其更改为 False 解决了我的问题。