对于简单的三次公式来说维度太大

对于简单的三次公式来说维度太大

这是我正在研究的情节:

\documentclass{book}
\usepackage{pgfplots}

\begin{document}
\begin{tikzpicture}
    \begin{axis}[
        axis lines=center,
        samples=200,
        xlabel={\(x\)},
        xmin=-0.5,xmax=3.5,
        ylabel={\(y\)},
        ymin=-0.5,ymax=2.5,
    ]
        \addplot [green] {(x - 2)^3 + 1};
    \end{axis}
\end{tikzpicture}
\end{document}

如果我使用ymin=-1.5或任何小于 的负值-1,则绘图渲染得很好。但是,Dimension too large当我使用ymin=-0.5上述值时,它会抱怨 。

我阅读了pgfplots文档第 2.6.2 节,但仍然找不到解决方案。

答案1

如果您使用默认域,即domain=-5:5,那么您的函数值似乎会变得太大。这有点奇怪,请参阅@Torbjørn T. 1 条评论。

要解决此问题,您有两个选择:

  • xmin在和之间定义域xmax(使用更宽的域是没有意义的),或者
  • 定义y(函数)值的限制:
\documentclass{book}
\usepackage{pgfplots}
\pgfplotsset{compat=1.17}

\begin{document}
\begin{tikzpicture}
    \begin{axis}[
        axis lines=center,
        xlabel={\(x\)},
        xmin=-0.5,xmax=3.5,
        ylabel={\(y\)},
        ymin=-0.5,ymax=2.5,
        samples=200,
        restrict y to domain=-0.5:12,
        domain=-0.5:3.5,        
every axis plot post/.append style={very thick},        
    no marks
    ]
        \addplot    {(x - 2)^3 + 1};
    \end{axis}
\end{tikzpicture}
\end{document}

第二种情况:

\documentclass{book}
\usepackage{pgfplots}
\pgfplotsset{compat=1.17}

\begin{document}
\begin{tikzpicture}
    \begin{axis}[
        axis lines=center,
        xlabel={\(x\)},
        xmin=-0.5,xmax=3.5,
        ylabel={\(y\)},
        ymin=-0.5,ymax=2.5,
        samples=200,
        restrict y to domain=-0.5:12,
every axis plot post/.append style={very thick},        
    no marks
    ]
        \addplot    {(x - 2)^3 + 1};
    \end{axis}
\end{tikzpicture}
\end{document}

两种情况下的结果都是一样的。

在此处输入图片描述

相关内容