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

如何修正LaTeX绘制平滑ROC曲线时线条超出坐标轴的问题

问题根源

溢出问题由两个原因共同导致:

  1. PGFPlots默认的smooth参数使用无约束三次样条插值,在仅提供3个坐标点的场景下,拟合曲线会超出原始点的取值范围,不符合ROC曲线单调递增的特性
  2. 原有坐标轴配置设置了xmin=-0.05、ymax=1.1,留出了本不需要的冗余显示空间,进一步放大了插值溢出的视觉问题

修正方案

按以下规则修改代码即可得到符合要求的平滑ROC曲线:

  • 调整坐标轴范围:将xmin设为0、ymax设为1,移除不必要的冗余显示区间
  • 替换平滑插值方式:给\addplot的平滑参数增加monotonic配置,使用单调样条插值,完全贴合ROC曲线单调递增的特性,从根源避免插值超出0-1的取值范围
  • 可选优化:如果需要调整平滑程度,可额外增加tension=<数值>参数,取值范围0-1,数值越小曲线越接近原始折线
  • 小修正:原有代码中百分比写法\%99.49顺序错误,应为99.49\%

修正后完整代码

\begin{tikzpicture}
\begin{axis}[
    font=\sf,
    xlabel={False Positive Rate},
    ylabel={True Positive Rate},
    xmin=0, xmax=1,
    ymin=0, ymax=1,
    xtick={0,.2,.4,.6,.8,1},
    ytick={0,.2,.4,.6,.8,1},
    legend pos=south east,
    no markers,
    every axis plot/.append style={ultra thick}
]
\addlegendimage{empty legend}
\addlegendentry{\hspace{-.6cm}\textbf{AUC}}

\addplot[smooth, monotonic, red] 
coordinates {(0,0)(0.00635842,0.99631106)(1,1)}; \addlegendentry{L = 99.49\%}
\end{axis}
\end{tikzpicture}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 11:06:03