我想制作条纹的贴片(例如,Rectangle)(例如,以45°的角度交替等厚的黄色和红色线)。我可以想到两种方式,但两者看起来都比它们应该更复杂:1)制作implot
并屏蔽它,以及2)为每个条带生成单独的补丁。有没有更好的方法来做到这一点,最好是一个可以保存为矢量图形的方法?
答案 0 :(得分:1)
根据所需的输出,您可以使用阴影线。这有几个缺点;但仍可满足需求。
import matplotlib.pyplot as plt
plt.rcParams["hatch.linewidth"] = 4
rec1 = plt.Rectangle((1,1),2,1.5, facecolor="limegreen",
edgecolor="darkgreen", hatch=r"\\" )
rec2 = plt.Rectangle((4,2),1,1, facecolor="indigo",
edgecolor="gold", hatch=r"//")
fig, ax = plt.subplots()
ax.add_patch(rec1)
ax.add_patch(rec2)
ax.margins(0.3)
ax.autoscale()
plt.show()
如您所见,您需要通过rcParams设置阴影线宽。此外,阴影角度无法控制,仅为0.45,90度。最后,阴影密度将取决于使用的图形尺寸和dpi。