如何在 tikz 中使用 plot 时定义可调用的数学函数

如何在 tikz 中使用 plot 时定义可调用的数学函数

假设我有f(x)=x^2+x+sin(x)。然后我想绘制g(f(x)),其中g(x)中的多项式x,然后我想进一步绘制h(g(f(x))),其中h(x)中的另一个多项式x,然后它继续。有没有办法保存f(x)g(x)并为它们命名,而不是每次都重写它?

目前我只是将所有内容重写如下:让g(x)=2x

\begin{tikzpicture}
\draw[domain=-1:1] plot (\x^2+\x+sin(\x));
\draw[domain=-1:1] plot (2*(\x^2+\x+sin(\x)));
% I have to rewrite f(x)
\end{tikzpicture}

我想定义一个变量f来表示我可以调用并绘制的函数f。有办法吗?

答案1

\documentclass[tikz, border=1cm]{standalone}
\begin{document}
\begin{tikzpicture}[
declare function={
 f(\x)=(\x)^2+\x+sin(\x);
 g(\x)=2*\x;
 h(\x)=(\x)^2;
}]
\draw[red] plot[domain=-1:1]  ( \x, {f(\x)} );
\draw[green] plot[domain=-1:1]  ( \x, {g(f(\x))} );
\draw[blue] plot[domain=-1:1]  ( \x, {h(f(\x))} );
\end{tikzpicture}
\end{document}

三条曲线

相关内容