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

Seaborn plot saved to eps does not show grid

我玩了一会儿,无法正确保存用 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')

自动保存

手动保存

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