Gibt es eine Möglichkeit, mit tikzpicture mehrere Achsen zu beschriften? Ich möchte keine Unterabbildungen verwenden, da jede Achse (und die zugehörige Abbildung) über einen Pfeil mit einer anderen Achse verbunden ist.
Ich habe so etwas Ähnliches:
\begin{figure}
\begin{tikzpicture}
\begin{axis} %axis 1
<code for plot here>
\draw node (bar1) at (some_coordinates){};
\end{axis}
\begin{axis}[ %axis 2
xshift = 3in
]
<code for plot here>
\draw node (bar2) at (some_coordinates) {};
\end{axis}
\begin{axis}[ %axis 3
xshift = 3in,
yshift = -3in,
]
<code for plot here>
\draw node (bar3) at (some_coordinates) {};
\end{axis}
\draw [->,thick,color=red,dashed] (bar1) -- (bar2);
\draw [->,thick,color=red,dashed] (bar2) -- (bar3);
\end{tikzpicture}
\end{figure}
Ist es möglich, jeder Achse eine Überschrift hinzuzufügen?
Antwort1
Mehrachsige Umgebungen lassen sich nur schwer verbinden, aber Sie können zumindest eine verwenden, groupplot
indem Sie die groupplots
Bibliothek laden. Hier ist ein Beispiel:
\documentclass{article}
\usepackage{pgfplots}
\usepgfplotslibrary{groupplots}
\pgfplotsset{compat=1.12}
\begin{document}
\begin{figure}[ht]
\centering
\begin{tikzpicture}
\begin{groupplot}[group style={group size=2 by 2},height=7cm,width=7cm]
\nextgroupplot
\addplot coordinates {(0,0) (1,1) (2,2)};
\draw node (bar1) at (1,0){bar1};
\nextgroupplot
\addplot coordinates {(0,2) (1,1) (2,0)};
\draw node (bar2) at (1,2){bar2};
\nextgroupplot
\addplot coordinates {(0,2) (1,1) (2,1)};
\draw node (bar3) at (1.5,1){bar3};
\nextgroupplot
\addplot coordinates {(0,2) (1,1) (1,0)};
\end{groupplot}
\draw [->,thick,color=red,dashed](bar1)--(bar2);
\draw [->,thick,color=red,dashed](bar2)--(bar3);
\end{tikzpicture}
\end{figure}
\end{document}
Antwort2
Wenn Sie tatsächlich nummerierte Bildunterschriften wünschen, können Sie diese \captionof
in einem Knoten unterhalb der Achse verwenden. Sie können auch eine Nummerierung der Unterabbildungen verwenden, wenn Sie das bevorzugen, siehe z. B.https://tex.stackexchange.com/a/250032/586
\documentclass{article}
\usepackage{pgfplots}
\usepackage{capt-of}
\begin{document}
\begin{figure}
\begin{tikzpicture}[every axis/.style={width=7cm}]
\begin{axis}[name=axis1] %axis 1
\addplot {rnd};
\node (bar1) at (1,1){};
\end{axis}
\begin{axis}[ %axis 2
xshift = 3in,
name=axis2
]
\addplot {rnd};
\node (bar2) at (1,1) {};
\end{axis}
\begin{axis}[ %axis 3
xshift = 3in,
yshift = -3in,
name=axis3
]
\addplot {rnd};
\node (bar3) at (1,1) {};
\end{axis}
\draw [->,thick,color=red,dashed] (bar1) -- (bar2);
\draw [->,thick,color=red,dashed] (bar2) -- (bar3);
\begin{scope}[every node/.style={text width=7cm,align=left}]
\node [below] at (axis1.south) {\captionof{figure}{First caption}};
\node [below] at (axis2.south) {\captionof{figure}{Second caption}};
\node [below] at (axis3.south) {\captionof{figure}{Third caption}};
\end{scope}
\end{tikzpicture}
\end{figure}
\end{document}