请考虑以下示例:
\documentclass{article}
\usepackage{tikz,pgfplots}
\pgfplotsset{compat=newest}
\usepackage{animate}
\pgfmathdeclarefunction{normal}{2}{%
\pgfmathparse{1/(#2*sqrt(2*pi))*exp(-((x-#1)^2)/(2*#2^2))}%
}
\begin{document}
\begin{figure}[ht]
\begin{center}
\begin{animateinline}[controls,palindrome]{5}
\multiframe{15}{ik=1+1}{
\begin{tikzpicture}
\begin{axis}[
hide y axis,
axis lines*=center,
axis on top,
no markers,
domain=0:25,
samples=100,
xlabel=\empty,
ylabel=\empty,
every axis x label/.style={at=(current axis.right of origin),anchor=west},
every axis y label/.style={at=(current axis.above origin),anchor=south},
xmin = 0, xmax = 25,
ymin = 0, ymax = 1,
xtick=, ytick=data,
enlargelimits=false,
clip=false
]
\addplot [very thick,cyan!90,draw opacity=.6*(1-\ik/7.5)*(1-\ik/7.5)] {normal((12-4.75*\ik/15),(4-3.75*\ik/15))/(\ik/3.75)};
\end{axis}
\end{tikzpicture}
}
\end{animateinline}
\end{center}
\end{figure}
\end{document}
如您所见,在动画过程中轴会拉伸。我想修复轴(和图形)以使用设置的坐标系而不偏离它。因此它将显示例如 x=[0,4] 和 y=[0,4] 的范围,而不管曲线的间隔如何(在这种情况下,曲线在 y 方向上的高度可变,导致轴拉伸以进行补偿)。或者,fix axes to set coordinate system
我正在寻找一个键或其他东西。
答案1
发生这种情况是因为您隐藏了轴。 您可以通过在 之前y
添加虚拟节点来更正边界框。\node (dummy) at (rel axis cs:0,1) {};
\end{axis}