我有兴趣使用 pgfplots 结合 TikZ&PGF 的数学库绘制我自己的函数。这个函数是我在文档中多次使用的功能。
像这样:
\documentclass[10pt, a4paper]{article}
\begin{document}
% Defining the function
\usetikzlibrary{math}
\tikzmath{
function my_fun(\a, \b, \c) { return \a * exp(\b * \c); % <<< This is my function
};
% Plotting the function
\begin{tikzpicture}
\begin{axis}
\addplot { my_fun{\x, 1, 0} }; % <<< This is obviously wrong
\end{axis}
\end{tikzpicture}
\end{document}
这有可能吗?如果不可能,您推荐哪种最佳方法来创建一个可以多次绘制(使用不同参数)的函数?
如果可能的话,我希望避免使用一系列\def
带有类型参数的方法。#
答案1
正如 percusse 在在问题下方评论你可以使用它declare function
来实现你想要的。下面是一个如何使用它的示例。
\documentclass[border=5pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{
% use this `compat' level or higher to use the LUA backend for calculation
% (--> speed improvement)
compat=1.12,
% declare your function here ...
/pgf/declare function={
MyFun(\a,\b,\c) = \a * exp(\b*\c);
},
}
\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot {MyFun(x, 1, 0)};
\addplot {MyFun(x, 1, 1)};
\addplot {MyFun(1, x, 1)};
\end{axis}
\end{tikzpicture}
\end{document}