python - 如何在matplotlib中设置多边形补丁的边缘颜色
问题描述
我设法将多边形补丁渲染到 matplotlib 画布上。
下面的代码node_coods
是一个包含多边形顶点的 Nx2 numpy 数组。
from matplotlib.patches import Polygon
from matplotlib.collections import PatchCollection
polygon = Polygon(node_coods, closed=True, edgecolor='r')
patches = [polygon]
p = PatchCollection(patches, cmap=mpl.cm.jet, alpha=0.4)
ax.add_collection(p)
目前我的情节看起来像这样,请注意它没有边缘颜色,尽管传递了手册中给出的参数。如何设置多边形补丁的边缘颜色?我想将其设置为红色,(但我想稍后将其调整为任何 RGB 值)
解决方案
既然你这样做了
p = PatchCollection(patches, alpha=0.4)
根据文档,edgecolors
默认为None
,默认设置会覆盖它
matplotlib.rcParams
,这是透明的。所以要么这样做:
p = PatchCollection(patches, edgecolor='r', alpha=0.4)
ax.add_collection(p)
这使
或者只是使用add_patch
:
polygon = Polygon(node_coods, closed=True, edgecolor='r')
# patches = [polygon]
# p = PatchCollection(patches, alpha=0.4)
fig, ax = plt.subplots()
ax.add_patch(polygon)
这使:
推荐阅读
- c# - "No route matches the supplied values" once again
- python - 面临通过 Python 从 gmail 下载特定附件的问题
- amazon-dynamodb - cloudformation中的字符串,列表和字符串列表有什么区别?
- webview2 - WebView2 - 调试 ExecuteScriptAsync
- google-sheets - 在谷歌表上应用日期过滤器后产品条件的小计
- javascript - 无法从 chrome 扩展的内容脚本中注册跨度按钮上的单击事件 | 谷歌见面 | 镀铬扩展
- uno-platform - 在 Uno Platform 中 TextBox 失去焦点后,如何防止 Android 中的软件键盘隐藏?
- python - Python 无法正确打印
- delphi - Delphi 10.4 ISAPI Printer.Handle
- javascript - DOM XSS - 这真的可以利用吗?