线Alpha不能在Matplotlib中正确保存

时间:2016-02-22 19:11:56

标签: python pdf matplotlib png alpha

我在matplotlib中使用指定的行alpha保存数字时遇到了令人困惑的问题。我真的很感激任何输入。我发现this previous thread但是更改光栅化似乎可以解决问题。

以下是我遇到此问题的最小例子:

import numpy as np
import matplotlib.pyplot as plt

arr = np.random.randn(10000, 2)
plt.plot(arr[:,0], arr[:,1],alpha=.09, color='black')
plt.savefig('dots_vector.pdf')
plt.show()

在显示窗口中,它看起来如下(我想要的):

desired figure

但是,当我将其另存为PDF或PNG时,它看起来如下所示:

sad, incorrect figure

注意,我尝试过以下设置:

ax.set_rasterized(True)

正如前面提到的那样,但解决了这个问题。

奇怪的是,当我更改该行的标记类型时,请执行以下操作:

plt.plot(arr[:,0], arr[:,1], 'o', alpha=.09, color='black')

alpha似乎与PDF或PNG完全一样,如下所示:

Working figure with dots

对于如何让线条图正确保存,我会非常感激任何想法,因为我很难过。

0 个答案:

没有答案