Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用matplotlib和alpha值导出地物_Python_Matplotlib - Fatal编程技术网

Python 使用matplotlib和alpha值导出地物

Python 使用matplotlib和alpha值导出地物,python,matplotlib,Python,Matplotlib,我正在用下面的代码绘制两个相交的透明直方图。当我看到在iPython中运行代码时弹出的图时,一切看起来都和预期的一样。 当我以png格式导出这个图形时,一切都很好,但是当我以eps格式导出它时,透明度消失了,我看不到直方图的相交部分。我想出口的eps格式与透明度。如有任何建议,将不胜感激 import numpy from matplotlib import pyplot as plt d1 = numpy.random.normal(-0.2, 0.25, 5000) d2 = numpy.

我正在用下面的代码绘制两个相交的透明直方图。当我看到在iPython中运行代码时弹出的图时,一切看起来都和预期的一样。 当我以png格式导出这个图形时,一切都很好,但是当我以eps格式导出它时,透明度消失了,我看不到直方图的相交部分。我想出口的eps格式与透明度。如有任何建议,将不胜感激

import numpy
from matplotlib import pyplot as plt

d1 = numpy.random.normal(-0.2, 0.25, 5000)
d2 = numpy.random.normal(0.2, 0.25, 5000)
bins = numpy.linspace(-1,1,30)
fig = plt.figure(1,figsize=(30.0, 15.0))
plt.ion()
plt.hist(d1, bins, alpha=0.5, normed=1)
plt.hist(d2, bins, alpha=0.5, normed=1)
plt.show()
plt.savefig('myfig.eps')    # <-- loses transparency
plt.savefig('myfig.png')    # <-- preserves transparency
导入numpy
从matplotlib导入pyplot作为plt
d1=numpy.random.normal(-0.2,0.255000)
d2=numpy.随机.正常(0.2,0.255000)
bin=numpy.linspace(-1,1,30)
图=plt.图(1,figsize=(30.0,15.0))
plt.ion()
plt.hist(d1,箱,α=0.5,标准=1)
plt.历史(d2,箱,α=0.5,标准=1)
plt.show()

plt.savefig('myfig.eps')#您可以在保存图形之前将其栅格化,以在eps文件中保持透明度:

ax.set_rasterized(True)
plt.savefig('rasterized_fig.eps')
有关更多可能的解决方案,请参见此处:

EPS有,所以如果可能,我会尽量避免使用EPS。PDF可以接受吗?因为绘图用于latex文档,所以PDF可以接受,并且可以保持透明度。我只是不认为在Matlab中类似的东西对我有用。无论如何,这解决了问题,并保持我的图形矢量化。谢谢可能重复的