Ich habe ein Problem mit der Platzierung einer Farbleiste. Die Farbleiste wird separat in einer Tikz-Umgebung definiert, wie indieses Thema.
Mein Ziel ist es, eine Farbleiste zusammen mit 4 PNG-Bildern (in einer 2x2-Konfiguration) in einer Figure-Umgebung zu platzieren. Die PNG-Bilder werden über den Subfigure-Befehl (siehe Code unten) in einer 2x2-Konfiguration angeordnet. Die Bilder sind schön ausgerichtet, aber wie kann ich hinzufügeneine vertikale Farbleisteauf die rechte Seite, die schön mit den 2x2-Unterfiguren ausgerichtet ist (ohne Verzerrung und mit maximaler Lesbarkeit)? Ich habe mehrere Versuche unternommen, aber leider ohne Erfolg. Ich habe auch konsultiertdieses Thema, ich habe es gerade beim Eintippen meiner Frage gefunden, aber es scheint, dass es für eine vertikale Farbleiste noch nicht gelöst ist.
\documentclass{article}
\usepackage{graphicx}
\usepackage{subcaption}
\usepackage{pgfplots,tikz}
\usepackage{mwe}
\begin{figure*}[t!]
\centering
\begin{subfigure}[t]{0.5\textwidth}
\centering
\includegraphics[ height=1cm, width=0.6\textwidth]{example-image-a};
\end{subfigure}%
~
\begin{subfigure}[t]{0.5\textwidth}
\centering
\includegraphics[ height=1cm, width=0.6\textwidth]{example-image-b};
\end{subfigure}
\vskip\baselineskip
\begin{subfigure}[t]{0.5\textwidth}
\centering
\includegraphics[ height=1cm, width=0.6\textwidth]{example-image-c};
\end{subfigure}%
~
\begin{subfigure}[t]{0.5\textwidth}
\centering
\includegraphics[ height=1cm, width=0.6\textwidth]{example-image-a};
\end{subfigure}
\caption{Random Caption}
\end{figure*}
\end{document}
Ich hoffe, die Frage ist klar genug. Jede Art von Hilfe ist sehr willkommen.
Antwort1
Eine Möglichkeit besteht darin, eine Tabelle mit zwei Spalten vom Typ zu verwenden m{<length>}
(erfordert diearray
Paket) mit zentriertem Inhalt. Die erste Spalte für das 2x2-Array von Bildern und die zweite Spalte für die Farbleiste. Ein kleines Beispiel, das diesen Ansatz veranschaulicht (passen Sie die Einstellungen Ihren Bedürfnissen an):
\documentclass{article}
\usepackage{graphicx}
\usepackage{subcaption}
\usepackage{pgfplots,tikz}
\usepackage{array}
\begin{document}
\begin{figure*}
\centering
\begin{tabular}{
@{}>{\centering\arraybackslash}m{\dimexpr.8\textwidth-\tabcolsep\relax}
>{\centering\arraybackslash}m{\dimexpr.1\textwidth-\tabcolsep\relax}@{}
}
\begin{subfigure}[t]{0.38\textwidth}
\centering
\includegraphics[ height=1.5cm, width=\textwidth]{example-image-a}
\end{subfigure}\hfill
\begin{subfigure}[t]{0.38\textwidth}
\centering
\includegraphics[ height=1.5cm, width=\textwidth]{example-image-b}
\end{subfigure}\par\bigskip
\begin{subfigure}[t]{0.38\textwidth}
\centering
\includegraphics[ height=1.5cm, width=\textwidth]{example-image-c}
\end{subfigure}\hfill
\begin{subfigure}[t]{0.38\textwidth}
\centering
\includegraphics[ height=1.5cm, width=\textwidth]{example-image-a}
\end{subfigure}
&
\includegraphics{colorbar}
\end{tabular}
\caption{Random Caption}
\end{figure*}
\end{document}
Das Ergebnis:
Die von mir verwendete Farbleiste wurde durch die Verarbeitung der folgenden Elemente erstellt colorbar.tex
:
\documentclass[border={-4pt 0pt 5pt 0pt}]{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
hide axis,
scale only axis,
height=0pt,
width=0pt,
colormap/jet,
colorbar horizontal,
point meta min=18,
point meta max=48,
colorbar style={
width=4cm,
rotate=90,
xtick={\empty},
}
]
\addplot [draw=none] coordinates {(0,0) (1,1)};
\end{axis}
\end{tikzpicture}
\end{document}