带有放大镜的情节,其中有一个不同的情节

带有放大镜的情节,其中有一个不同的情节

我想放大一个函数图,但在放大的区域我想画一个不同的图。例如,我编辑了一张取自 TeX Stack Exchange 上另一个讨论的图片

放大的立方抛物线

我研究过间谍库,但文档中没有提到这种特殊用途。

编辑:一个最小的工作示例是

\documentclass{article}
\usepackage{pgfplots}

\begin{document}

\begin{tikzpicture}
\begin{axis}
\addplot coordinates
{(0,0) (3,4)};
\end{axis}
\end{tikzpicture}

\end{document}

作为基础图,而放大镜则需要显示,例如由

\begin{tikzpicture}
\begin{axis}
\addplot[smooth] coordinates
{(0,0) (1,0.25) (1.5, 0.5) (2,1)};
\end{axis}
\end{tikzpicture}

答案1

由于您实际上并不是在进行间谍活动,因此请将次要情节框起来,并使用\nodes 和\coordinates 来放置间谍元素:

在此处输入图片描述

代码:

\documentclass{article}
\usepackage{pgfplots}

\newsavebox\plotbox
\begin{lrbox}{\plotbox}
\begin{tikzpicture}
\begin{axis}[
axis lines=none,
width=3cm,
height=3cm
]
\addplot[smooth,blue] coordinates
{(0,0) (1,0.25) (1.5, 0.5) (2,1)};
\end{axis}
\end{tikzpicture}%
\end{lrbox}

\begin{document} 

\begin{tikzpicture}
\begin{axis}[
grid=major
]
\addplot coordinates
{(0,0) (3,4)};
\coordinate (spyanchor) at (axis cs:2,2.66666);
\node[circle,draw,inner sep=0pt,green,fill=white] at (axis cs:1,3)
  (spyplot)
  {\usebox\plotbox};
\node[green,circle,draw,inner sep=5pt]
  at (spyanchor)
  (spynode)
  {};  
\draw[green]
  (spyplot) -- (spynode);  
\end{axis}
\end{tikzpicture}

\end{document}

相关内容