我不确定这是一个错误还是我做错了什么。我的目标是在图例中显示一个舱口,但它不起作用。我用的代码是
import matplotlib.patches as mpatches
...
def plot_legend(ax):
ep = mpatches.Patch(color=[1.0, 0.5, 1.0, 1], hatch='/',
label=r'$\pi_e\ free$')
cp = mpatches.Patch(color=[1.0, 1.0, 1.0, 1], label='$\pi_e = exp(-60)$')
#ax.legend(handles=[ep, cp], bbox_to_anchor=(1.05, 1),
# loc=2, borderaxespad=0.)
pyl.legend(handles=[ep, cp],
loc=1)
return
结果如下:
我正在使用的matplotlib版本在mac计算机中是1.5.1。
答案 0 :(得分:4)
据推测,color
中的mpatches.Patch
关键字适用于edgecolor
和facecolor
。您的舱口可能在那里,因为颜色相同而不可见。
明确指定facecolor
应解决您的问题:
ep = mpatches.Patch(edgecolor=[1.0, 0.5, 1.0, 1], facecolor=[0.5, 1.0, 1.0, 1],
hatch='/', label=r'$\pi_e\ free$')
这有帮助吗?