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

Matplotlib直方图存为SVG出现多余白线,PNG正常的原因及解决

问题排查与解决

原因分析

SVG格式直方图出现白色分割线,是因为Matplotlib绘制直方图时默认边缘颜色(edgecolor)为白色,且你设置了linewidth=2——矢量格式SVG会精准渲染出这些白色边框;而PNG作为位图,渲染时细边框可能被填充色覆盖或因抗锯齿效果变得不可见,所以两者显示不一致。

解决方案

有两种方式可以消除SVG中的白色分割线,根据需求选择:

  1. 让边框颜色与填充色一致
    修改直方图绘制代码,添加edgecolor='Black'参数,使边框和填充色融合:
plt.hist(dataset2['Angle'], bins=15, weights=weights2, color='Black', edgecolor='Black', linewidth=2, label='Virtual')
  1. 直接移除边框
    如果不需要直方图边框,设置edgecolor='none'即可完全去掉分割线:
plt.hist(dataset2['Angle'], bins=15, weights=weights2, color='Black', edgecolor='none', linewidth=2, label='Virtual')

额外提示

你代码中plt.savefig(..., dpi=00)是无效设置,建议改为dpi=300这类合理数值,确保PNG格式的清晰度。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 16:56:04