我用 pgfplots 绘制了这条曲线
\documentclass[12pt]{article}
\usepackage[margin=1.5cm,top=1cm,headheight=16pt,headsep=0.1in,heightrounded]{geometry}
\usepackage{pgfplots}
\pgfplotsset{compat=1.11}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
xmax=5,ymax=10,
axis lines=middle,
restrict y to domain=0:13,
yticklabels=\empty, xticklabels=\empty,
width=10cm,
height=10cm,
enlargelimits]
\addplot[blue,samples=100] {(8*(1-exp(-x))^2)} node[above right] {\begin{tabular}{c} anharmonic\\oscillator \end{tabular}} ;
\end{axis}
\end{tikzpicture}
\end{document}
现在我想将同一条曲线水平平移并“居中” x
,使 的值等于3
。并且,也许还要确保“非谐振子”节点不会被剪裁。
你有什么建议吗?
答案1
为了防止节点被剪裁,请将其移出 -environment axis
。要记住曲线的终点,只需使用coordinate(<name>)
代替node
,然后\node at(<name>)
在 后添加\end{axis}
。
(x-3)
要移动曲线,最简单的方法就是使用而不是将其重新绘制,稍微移动一点x
。
要绘制一条最多 x 值为 5 的曲线和另一条最多 x 值为 8 的曲线,您必须将您的更改为 8(或更大),并为两个sxmax
指定:domain
\addplot
\documentclass[12pt]{article}
\usepackage[margin=1.5cm,top=1cm,headheight=16pt,headsep=0.1in,heightrounded]{geometry}
\usepackage{pgfplots}
\pgfplotsset{compat=1.11}
\begin{document}
\begin{tikzpicture}
\begin{axis}[xmax=8,ymax=10,
axis lines=middle,
restrict y to domain=0:13,
yticklabels=\empty, xticklabels=\empty,
width=10cm,
height=10cm,
enlargelimits]
\addplot[blue,samples=100,domain=-5:5] {(8*(1-exp(-x))^2)} coordinate(end);
\addplot[red, samples=100,domain=-2:8] {(8*(1-exp(-(x-3)))^2)};
\end{axis}
\node[above right,blue] at(end)
{\begin{tabular}{c}anharmonic\\oscillator\end{tabular}};
\end{tikzpicture}
\end{document}