9

当尝试将带有阴影图案的矩形补丁添加到绘图时,似乎不可能在同时指定阴影值时将关键字参数 edgecolor 设置为“无”。换句话说,我试图添加一个没有边缘但有图案填充的阴影矩形。这似乎不起作用。仅当我还允许在矩形补丁周围绘制边缘时,才会显示该模式。

有关如何实现所需行为的任​​何帮助?

4

1 回答 1

16

您应该使用linewidth必须设置为零的参数。

示例(基于您的其他问题的答案):

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

fig = plt.figure()
ax = fig.add_subplot(111)

# generate some data:
x,y = np.meshgrid(np.linspace(0,1),np.linspace(0,1))
z = np.ma.masked_array(x**2-y**2,mask=y>-x+1)

# plot your masked array
ax.contourf(z)

# plot a patch
p = patches.Rectangle((20,20), 20, 20, linewidth=0, fill=None, hatch='///')
ax.add_patch(p)
plt.show()

你会得到这个图像: 在此处输入图像描述

于 2013-08-23T13:53:58.633 回答