在 tikz/pgfplots 中的函数中使用变量中定义的常量

在 tikz/pgfplots 中的函数中使用变量中定义的常量

我正在寻找一种很好的方法来绘制具有我可以在外部定义的常量的函数图,类似于下面的例子

\defineconstant{A}{4}
\addplot{A*e^x};

我想要A一个轴/tikzpicture 本地范围,我知道我可以定义命令,但这不是本地范围。

答案1

有几种方法可以声明“常量”,正如您从问题下面的评论中看到的。这里我展示了其中三种,它们都是本地的,也就是说,您不能在第一个tikzpicture环境之外使用它们。您可以通过稍后再次尝试使用它们来测试这一点,但这会导致错误。

它们是本地的,因为我定义/声明了它们里面环境。这使它们成为本地的。如果您将和tikzpicture的定义移到之前,那么它们也将在第二个环境中工作。(当然也可以使其在全球范围内可用。)\B\C\begin{tikzpicture}tikzpictureA

% used PGFPlots v1.18.1
\documentclass[border=5pt]{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}[
    % define/declare constants using PGFs math engine
    /pgf/declare function={
        A = 2;
    }
]
        % define a constant using PGFs "mathematical expressions"
        \pgfmathsetmacro{\B}{0.5}
        % define a constant using a LaTeX command
        \newcommand*{\C}{1}
    \begin{axis}
        \addplot {A*\B*\C};
    \end{axis}
\end{tikzpicture}
\begin{tikzpicture}
    \begin{axis}
% uncommenting the following lines will raise errors,
%        \addplot {A};
%        \addplot {\B};
%        \addplot {\C};
    \end{axis}
\end{tikzpicture}
\end{document}

相关内容