绘制一系列退入页面的图形;TikZ

绘制一系列退入页面的图形;TikZ

我想绘制一个引文网络图表面板,让其逐渐缩进页面,如下图所示。在下面的草图中,每个蓝色矩形代表不同时间点的引文网络,绘制为tikzpicture

我尝试适应这是垂直堆栈的示例。交换 x 和 y 命令不会产生正确的效果,因此我认为可能有更好的方法。 在此处输入图片描述

答案1

我在这里展示了如何使用一张拼凑起来的tikz图像(我不知道如何使用tikz,所以请原谅我的无能)并使用\includegraphics其余部分。用你的代码替换每个\savestack

\documentclass{article}
\usepackage{graphicx,tikz}
\usepackage[usestackEOL]{stackengine}
\def\incg{\includegraphics[width=.5in]{graph.jpg}}
\begin{document}
% REPLACE \incg IN NEXT LINES WITH YOUR `tikz` IMAGES
\savestack\layerA{\fboxsep=0pt\fbox{\colorbox{white}{\tiny%
  \begin{tikzpicture}
   \node [draw] (A) at (0,0) {demo text};
   \node [draw] (B) at (0,-.7) {demo text};
   \draw (A.215) -- (B.145);
   \draw (A.325) -- (B.35);
  \end{tikzpicture}}}}
\savestack\layerB{\incg}
\savestack\layerC{\incg}
\savestack\layerD{\incg}
\savestack\layerE{\incg}
\savestack\layerF{\incg}
\savestack\layerG{\incg}
This sets and staggers the boxes.\\
\fbox{\setstackgap{L}{.06in}\Longunderstack[l]{%
  \kern.6in\layerG\\  
  \kern.5in\layerF\\
  \kern.4in\layerE\\
  \kern.3in\layerD\\
  \kern.2in\layerC\\
  \kern.1in\layerB\\
  \kern.0in\layerA\\
}}

or this\\
\setbox0=\hbox{
\stackinset{r}{.6in}{t}{.36in}{\layerA}{%
\stackinset{r}{.5in}{t}{.30in}{\layerB}{%
\stackinset{r}{.4in}{t}{.24in}{\layerC}{%
\stackinset{r}{.3in}{t}{.18in}{\layerD}{%
\stackinset{r}{.2in}{t}{.12in}{\layerE}{%
\stackinset{r}{.1in}{t}{.06in}{\layerF}{%
  \layerG%
}}}}}}
}\fbox{\kern.6in\raisebox{.36in}{\box0}}

\end{document}

在此处输入图片描述

答案2

像这样?

\documentclass{article}
\usepackage{tikz}
\tikzset{
    box/.style={%
        rectangle,       
        minimum height=4cm,
        minimum width=4cm,
       bottom color=blue,top color=blue!50
    }
}

\begin{document}
\begin{tikzpicture}
\foreach \x in{4,3,2,1}{
\node[box] (c1) at (\x,\x) {};
}
\end{tikzpicture}
\end{document}

在此处输入图片描述

答案3

如果您想要做的只是堆叠一些tikzpictures,那么您可以通过简单地使用es 和一些s 来避免嵌套tikzpicture环境(这可能会产生不良结果或迫使您先前限制内部环境):\raisebox\hspace

\documentclass{article}
\usepackage{tikz}

\begin{document}

\noindent
\begin{minipage}{\textwidth}
\centering
\begin{tikzpicture}
\draw[fill=orange!30] (0,0) rectangle (2.5,-4);
\end{tikzpicture}%
\hspace*{-30pt}\llap{\raisebox{-0.2\height}[0pt][0pt]{%
  \begin{tikzpicture}
  \draw[fill=cyan!30] (0,0) rectangle (2.5,-4);
  \end{tikzpicture}}}%
\hspace*{-30pt}\llap{\raisebox{-0.4\height}[0pt][0pt]{%
  \begin{tikzpicture}
  \draw[fill=magenta!30] (0,0) rectangle (2.5,-4);
  \end{tikzpicture}}}%
\hspace*{-30pt}\llap{\raisebox{-0.6\height}[0pt][0pt]{%
  \begin{tikzpicture}
  \draw[fill=olive!30] (0,0) rectangle (2.5,-4);
  \end{tikzpicture}}}%
\end{minipage}

\end{document}

在此处输入图片描述

相关内容