You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

matplotlib使用contour绘制2σ置信椭圆时如何填充内部纯色

问题原因

plt.contour() 仅用于绘制等值线轮廓,默认不会对轮廓闭合的内部区域做填充,调整cmap参数只会改变轮廓线的配色,无法生成填充效果。

解决方案

要实现2σ置信椭圆内部纯色填充,直接使用Matplotlib的填充等值线接口plt.contourf()即可,具体操作:

  • 确定填充区间:2σ置信边界对应的似然阈值为level2,填充范围为所有落在2σ置信域内的似然值区间
  • 调用contourf绘制填充层,如果需要清晰的轮廓边线,在填充层之上叠加原contour绘制的边界线即可

参考代码:

# 似然值越大代表拟合优度越高的场景,填充≥level2的椭圆内部区域
plt.contourf(
    x, y, likelihood,
    levels=[level2, likelihood.max()],
    colors="#2c7fb8",  # 指定填充纯色,支持十六进制色值、颜色名、RGB元组
    alpha=0.6  # 可选:设置填充透明度,避免遮挡坐标轴、数据点或标注
)

# 可选:叠加绘制轮廓边线,强化边界显示效果
plt.contour(
    x, y, likelihood,
    levels=[level1, level2],
    colors="black",
    linewidths=1.2
)

特殊情况适配

如果你的计算用的是负对数似然(数值越小代表拟合优度越高),将填充区间反向设置即可:
levels=[likelihood.min(), level2]

不需要给contourf设置cmap参数,纯色填充直接指定colors参数即可生效,操作比调整色图更简单。

内容的提问来源于stack exchange,提问作者Ayan Mitra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 02:24:27