[英]Python: Matplotlib Patches and Contour Plots
使用 PatchCollection 時,有沒有辦法使圓的填充透明? 我繪制了一個圓圈,並嘗試將 facecolor 設置為“無”,但它覆蓋了繪制在其上的等高線圖。 我想看到圓圈的輪廓,輪廓在它后面仍然可見。
立體網是使用 mplstereonet-0.2 第三方軟件繪制的。 這是繪制圖像的腳本部分:
hold(True)
fig, ax = plt.subplots(subplot_kw = dict(projection = 'stereonet')) # Schmidt by default
cax = ax.density_contourf(strike, dip, measurement = 'poles')
ax.pole(strike, dip, 'k^', markersize = 3)
ax.grid(True)
patches = []
circle = Circle((0, 0), 0.5, facecolor = 'none', fill = False)
patches.append(circle)
p = PatchCollection(patches)
ax.add_collection(p)
cbar = fig.colorbar(cax, cmap = cm)
cbar.set_clim(0, 25)
我解決了這個問題,但感謝任何可能正在研究這個問題的人。
解決方案:
p = PatchCollection(patches, match_original = True)
這將使輪廓在形狀后面可見。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.