如何使用特定域和特定坐标绘制函数(使用 pgfplots)?

如何使用特定域和特定坐标绘制函数(使用 pgfplots)?

我想绘制两条曲线(x^5),但一条使用域50-140,另一条仅使用特定点。

以下是代码:

\begin{figure}[!h]
\centering
\caption{Gráfico (c)}
\begin{tikzpicture} 
    \begin{axis}[xlabel = Entrada(n),ylabel = Tempo(s), samples at={50,55,60,...,145,150}]

        \addplot[color=red,mark=x]coordinates {
            (50,        4.991e+000)
            (70,        2.704e+001)
            (100,       1.717e+002)
            (120,       4.696e+002)
            (140,       8.876e+002)
        };

        \addplot[blue,thick]{(x)^(5)};

        \legend{Estimado,Modelo}
    \end{axis}  
\end{tikzpicture}
\end{figure}

在此处输入图片描述

答案1

首先,对于这种情况,您不需要samples at={50,55,60,...,145,150}。一旦删除它,您就可以使用domain键来绘图。

\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.12}
\begin{document}
\begin{tikzpicture}
    \begin{axis}[xlabel = Entrada(n),ylabel = Tempo(s), %samples at={50,55,60,...,145,150}
    ]

        \addplot[color=red,mark=x]coordinates {
            (50,        4.991e+000)
            (70,        2.704e+001)
            (100,       1.717e+002)
            (120,       4.696e+002)
            (140,       8.876e+002)
        };

        \addplot[blue,thick,domain=50:140]{(x)^(5)};

        %\legend{Estimado,Modelo}
    \end{axis}
\end{tikzpicture}
\end{document}

在此处输入图片描述

我已经删除了图例,只是为了显示图表的端点。


y红线的值与蓝线的值相比太小。因此红线看起来与蓝线呈线性关系。y scale事情的发生过程如下:

\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.12}
\begin{document}
\begin{tikzpicture}
    \begin{axis}[xlabel = Entrada(n),ylabel = Tempo(s), %samples at={50,55,60,...,145,150}
    ]

        \addplot[color=red,mark=x]coordinates {
            (50,        4.991e+000)
            (70,        2.704e+001)
            (100,       1.717e+002)
            (120,       4.696e+002)
            (140,       8.876e+002)
        };

        \addplot[blue,thick,restrict y to domain={0:1000}]{(x)^(5)};

        \legend{Estimado,Modelo}
    \end{axis}
\end{tikzpicture}
\end{document}

在此处输入图片描述

您还可以阅读pgfplots手册第 337 页以获取有关限制域的更多信息。

相关内容