我正在尝试为左侧的图创建缩放效果。我在其中制作了一个框,我想从矩形的两个角绘制线条到右侧的图。我以为这可能很简单,\coordinate
但pgfplots
似乎忘记了传递到另一个图的坐标。是否有可能使用来实现这种效果groupplots
?
这是我的图的 MWE。
\documentclass{standalone}
\usepackage{mathtools}
\usepackage{tikz}
\usepackage{pgfplots}
\usepgfplotslibrary{groupplots}
\pgfplotsset{compat=1.18}
\begin{document}
\begin{tikzpicture}[scale=0.7]
\begin{groupplot}[group style={group size=2 by 1,ylabels at=edge left,},
xlabel=$X_\text{Cr}$,ylabel=$\mu$,
]
\nextgroupplot[xmax=1.1,xmin=-0.1,ymax=30000,ymin=-23000]
\draw (0,-21000) rectangle (0.2,10000);
\coordinate (A) at (0,-21000);
\coordinate (B) at (0.2,10000);
\nextgroupplot[xmax=0.2,xmin=0,ymax=10100,ymin=-23000]
\addplot coordinates {(0,-20000) (0.1,-10000) (0.18,9000)};
\end{groupplot}
\draw (A) -- (group c2r1.north west);
\draw (B) -- (group c2r1.south west);
\end{tikzpicture}
\end{document}
答案1
通过尝试不同的方法解决了问题。似乎scale=
给出的选项tikzpicture
弄乱了坐标,因此将线指向了任何地方。由于我总是需要缩小图片的尺寸,所以我使用了small
选项(参见pgfplots
文档)。
这里是 MWE:
\documentclass{standalone}
\usepackage{mathtools}
\usepackage{tikz}
\usepackage{pgfplots}
\usepgfplotslibrary{groupplots}
\pgfplotsset{compat=1.18,}
\begin{document}
\begin{tikzpicture}
\begin{groupplot}[group style={group size=2 by 1,ylabels at=edge left,},
xlabel=$X_\text{Cr}$,ylabel=$\mu$,small,/tikz/font=\footnotesize,
]
\nextgroupplot[xmax=1.1,xmin=-0.1,ymax=30000,ymin=-23000]
\draw (0,-21000) rectangle (0.2,10000);
\coordinate (A) at (0,-21000);
\coordinate (B) at (0.2,10000);
\nextgroupplot[xmax=0.2,xmin=0,ymax=10100,ymin=-23000]
\addplot coordinates {(0,-20000) (0.1,-10000) (0.18,9000)};
\end{groupplot}
\draw (A) -- (group c2r1.south west);
\draw (B) -- (group c2r1.north west);
\end{tikzpicture}
\end{document}