我想在节点内使用 \begin{axis} 和 \addplot,如下所示:
\begin{tikzpicture}[xscale=0.5,yscale=0.5]
\pgfmathdeclarefunction{gauss}{2}{
\pgfmathparse{1/(#2*sqrt(2*pi))*exp(-((x-#1)^2)/(2*#2^2))}
}
\node [rectangle, draw] (a) at (0,0) {
\begin{axis}[height=3cm,width=5cm]
\addplot {gauss(0,0.5)};
\end{axis}
};
\node [rectangle, draw] (b) at (5,-2) {Test};
\draw [<->] (a) -- (b);
\end{tikzpicture}
不幸的是,矩形没有包围图。如何解决这个问题?
在节点中包含图的正确方法是什么?
多谢!
答案1
这更多的是为了让你熟悉格式。如果你想回复评论,那么你需要向你想要回复的用户发邮件。所以在你上面的评论中你应该添加@TorbjørnT。你也应该编辑你的问题,而不是在评论中添加代码片段。无论如何,下面的方法有效。你的方法在高斯定义中存在虚假空间,而且declare function
可以说无论如何都更容易处理(但你可以删除空格)。
\documentclass[border=3.14mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.15}
\begin{document}
\begin{tikzpicture}[declare
function={gauss(\x,\y,\z)=1/(\z*sqrt(2*pi))*exp(-((\x-\y)^2)/(2*\z^2));}]
\begin{axis}[name=a,width=4cm]
\addplot[domain=-3:3] {gauss(x,0,0.5)};
\end{axis}
\node [rectangle,draw,name=b] at (5,-3) {XYZ};
\begin{axis}[name=c,width=4cm,xshift=7cm]
\addplot[domain=-3:3] {gauss(x,3,1)};
\end{axis}
\draw [<->] (a) -- (b);
\end{tikzpicture}
\end{document}