我曾经tikzpicture
创建过几个在 y 轴上应该具有可比性的图表。我曾经xshift
将其中一个向右移动任意量(10 厘米的反复试验)。但我的yshift
必须精确地为“y 轴上的 2 个单位”。我猜默认值是 pt,因此yshift=2
不起作用。
\begin{tikzpicture}
\begin{axis}[axis lines=middle,xmin=0,xmax=15,ymin=0,ymax=15, extra y ticks={2},]
\addplot+[no marks,domain=4:10,samples=200, thick, blue] {0.3*(x-10)^2+4};
\addplot+[no marks,domain=0:11,samples=200, thick, blue] {2};
\coordinate (X1) at (11,2);
\end{axis}
\begin{axis}[axis lines=middle,xmin=0,xmax=15,ymin=0,ymax=13,xshift=10cm,yshift=2]
\coordinate (X2) at (0,0);
\end{axis}
\draw[draw=gray, thick, dashed] (X1) -- (X2);
\end{tikzpicture}
左侧 y 轴上的 15 应该完全等于右侧图表中的 12。
此外,这里还有 Baldwin/Wyplosz (2009) 的一些经济应用:右图总是必须从左图的某个常数值 (这里是 MC) 开始。
答案1
您可以用它calc
来测量转变。
\documentclass[tikz,border=3.14mm]{standalone}
\usetikzlibrary{calc}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
\begin{axis}[axis lines=middle,xmin=0,xmax=15,ymin=0,ymax=15, extra y ticks={2},]
\addplot+[no marks,domain=4:10,samples=200, thick, blue] {0.3*(x-10)^2+4};
\addplot+[no marks,domain=0:11,samples=200, thick, blue] {2};
\coordinate (X0) at (0,0);
\coordinate (X1) at (11,2);
\path let \p1=($(X1)-(X0)$) in \pgfextra{\xdef\myyshift{\y1}};
\end{axis}
\begin{axis}[axis lines=middle,xmin=0,xmax=15,ymin=0,ymax=13,xshift=10cm,
yshift=\myyshift]
\coordinate (X2) at (0,0);
\end{axis}
\draw[draw=gray, thick, dashed] (X1) -- (X2);
\end{tikzpicture}
\end{document}
您还可以使用
\path let \p1=($(0,2)-(0,0)$) in \pgfextra{\xdef\myyshift{\y1}};