Derzeit versuche ich, eine Abbildung mit mehreren Bildern zu erstellen (siehe beigefügtes Bild). Den Teil mit den ersten drei Bildern konnte ich problemlos erstellen, aber das vierte Bild, also die Legende, konnte ich nicht so hinzufügen, wie ich es im beigefügten Bild gezeigt habe.
Könntest du helfen?
\begin{figure}[H] \centering \begin{subfigure}{0.48\textwidth} \centering \includegraphics[width=\linewidth]{figures/image1.png} \caption{image 1} \label{image 1} \end{subfigure} \hfill \begin{subfigure}{0.48\textwidth} \centering \includegraphics[width=\linewidth]{figures/image2.png} \caption{image 2} \label{image 2} \end{subfigure} \hfill \begin{subfigure}{0.48\textwidth} \centering \includegraphics[width=\linewidth]{figures/image3.png} \caption{image 3} \label{image 3} \end{subfigure} \caption{Multiple images} \label{Multiple images} \end{figure}
Antwort1
Um Inhalt nach unten zu verschieben, müssen Sie eine leere Zeile hinzufügen oder solchen Inhalt ein voranstellen \par
, was der leeren Zeile entspricht. Wenn Sie den vertikalen Abstand steuern möchten, können Sie dies außerdem \parskip
innerhalb der Abbildungsumgebung ändern. Siehe Beispiel unten.
Das vollständige Beispiel:
\documentclass{article}
\usepackage{graphicx}
\usepackage{subcaption}
\usepackage{kantlipsum}
% \usepackage{showframe}
% \renewcommand*\ShowFrameLinethickness{0.2pt}
% \renewcommand*\ShowFrameColor{\color{blue}}
\begin{document}
\kant[1][1]
\begin{figure}[tbh]
\setlength\parskip{\baselineskip}%
\setkeys{Gin}{width=\linewidth}%
\centering
\begin{subfigure}{0.48\textwidth}
\includegraphics{example-image}
\caption{image 1}
\label{image 1}
\end{subfigure}%
\hfill
\begin{subfigure}{0.48\textwidth}
\includegraphics{example-image}
\caption{image 2}
\label{image 2}
\end{subfigure}
\begin{subfigure}{0.48\textwidth}
\includegraphics{example-image}
\caption{image 3}
\label{image 3}
\end{subfigure}
\includegraphics[width=0.75\linewidth, height=1cm]{example-image-a}
\caption{Multiple images}
\label{Multiple images}
\end{figure}
\kant[1][3]
\end{document}
BEARBEITEN. Ein paar Anmerkungen
- Sie benötigen es nicht
\centering
innerhalb jedersubfigure
Umgebung, da Bilder die gesamte Breite ihres übergeordneten Felds umfassen. - Die Zeile
\setkeys{Gin}{width=\linewidth}
legt die Breite jedes folgenden Bildes fest, sodass sie nicht wiederholt werden muss. - Obwohl es in diesem Fall optisch keinen Unterschied macht, sollten Sie beachten, dass eine neue Zeile einen leeren horizontalen Raum hinzufügt, es sei denn, Sie beenden die vorherige Zeile mit
%
Um auf den letzten Punkt einzugehen, betrachten Sie noch einmal Ihr Beispiel:
\begin{...}
...
\end{...} <--- empty horizontal space
\hfill
\begin{...}
...
\end{...}
LateX fügt zwischen der ersten und der zweiten Umgebung einen Leerraum hinzu. Dann verwenden Sie \hfill
. So wird alles wie erwartet ausgerichtet. Nehmen wir jedoch an, Sie möchten zwei Boxen zusammenfügen. Der folgende Code würde einen Leerraum zwischen ihnen lassen
\begin{...}
...
\end{...}
\begin{...}
...
\end{...}
während dieser Code nicht
\begin{...}
...
\end{...}% <--- no empty space added
\begin{...}
...
\end{...}
Außerdem verbrauchen Parameter-lose Makros, wie z. B. \hfill
, \cetering
Leerzeichen, sodass das oben genannte %
nicht erforderlich ist. Wenn Sie andererseits ein Leerzeichen nach einem solchen Makro erzwingen möchten, fügen Sie leere Klammern hinzu: {}
, zB \mymacro{}
statt \mymacro
.