如何绘制具有未定义常数的函数?

如何绘制具有未定义常数的函数?

下面的例子绘制了 exp(-x),但我想绘制 lambda*exp(-x),将 lambda 作为未知变量,并让 y 轴从 0 到 lambda,如下图所示。

在此处输入图片描述

\documentclass[11pt]{report}
\usepackage{tikz}
\usepackage{pgfplots}
\begin{document}

\begin{figure}[!tbp]
    \centering
    \begin{tikzpicture}
    \begin{axis}[
    axis lines = left,
    xlabel = $t$,
    ylabel = $x$,
    ]

    \addplot [
    domain=0:20, 
    samples=100, 
    color=red,
    ]
    {exp(-x)};
    \end{axis}

    \end{tikzpicture}
\end{figure}
\end{document}

提前致谢!

答案1

听起来您需要做的就是更改轴上的标签。

要指定您只希望在 y 轴上的位置有一个刻度y=1,请设置ytick = {1}

要指定要用 λ 标记该位置,请设置yticklabels = {$\lambda$}

要从 x 轴删除所有刻度标记,请设置xtick = \empty

\documentclass[11pt]{report}
\usepackage{tikz}
\usepackage{pgfplots}

\pgfplotsset{compat=1.13} % Nicer axis label placement

\begin{document}

\begin{tikzpicture}
\begin{axis}[
    axis lines = left,
    xlabel = $t$,
    ylabel = $x$,
    ymin = 0,
    ytick = {1},
    yticklabels = {$\lambda$},
    xtick = \empty,
    enlarge y limits = upper % Add some extra space at the top
]

\addplot [
    domain=0:5, 
    samples=100, 
    color=red,
]
{exp(-x)};
\end{axis}
\end{tikzpicture}
\end{document}

答案2

PSTricks 解决方案:

\documentclass{article}

\usepackage{pst-plot}
\usepackage{xfp}

% constants
\def\Lambda{5}
\def\xPoint{1.3}

\begin{document}

\begin{pspicture}(-0.5,-0.55)(\fpeval{\Lambda+0.65},5.7)
  \psaxes{->}(0,0)(-0.5,-0.5)(\fpeval{\Lambda+0.3},\fpeval{\Lambda+0.3})[$x$,0][$y$,90]
  \psplot[algebraic, linecolor = red]{0}{\Lambda}{\Lambda*Euler^(-x)}
  \uput[45](\xPoint,\fpeval{\Lambda*exp(-\xPoint)}){$y = \Lambda\exp(-x)$}
\end{pspicture}

\end{document}

输出

您所要做的就是改变常量的值,绘图就会进行相应的调整。

相关内容