2011-03-04 81 views
7

我正在尝试使用matplotlib中的阴影功能,在显示到屏幕时工作正常。然而,当我保存这个数字为PDF格式,舱口标记不会呈现:Matplotlib在渲染为pdf时不显示阴影

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

x = np.linspace(0,2*np.pi,100) 

plt.figure() 
plt.fill(x,np.sin(x),color='blue',alpha=0.5,hatch='/') 
plt.show() 
plt.savefig('./test.pdf',format='pdf') 

我在OS X 10.6.6 pylab使用matplotlib 1.0.1。这可能是与后端渲染器有关的平台特定问题,但我不确定。任何建议将不胜感激。

回答

4

看起来像一个错误。请将其存入github issue tracker

在此期间,这里有一个解决方法:

plt.fill(x,np.sin(x),color='blue',alpha=0.5) 
plt.fill(x,np.sin(x),color='None',alpha=0.5,edgecolor='blue',hatch='/') 
+0

神奇。感谢您的解决方法,我会发布该问题。 – JoshAdel 2011-03-04 19:34:25