Ich versuche, zwei übergroße Abbildungen nebeneinander auf einer Seite unterzubringen. Ich habe versucht, Minipage und Breitenanpassung zu verwenden, aber die Beschriftung der zweiten Abbildung wurde immer wieder nach links verschoben, wie unten gezeigt.
Ich habe versucht, mehrere scheinbar verwandte Fragen zu lesen, konnte das aber nicht herausfinden. Ich habe versucht, nach einem der Vorschläge subfigure zu verwenden, aber das schien noch schlimmer zu sein.
Ich bin für jeden Tipp dankbar. Danke.
\documentclass{article} % letter paper and 11pt font
\usepackage[space]{grffile} % for filenames with spaces
\usepackage{float}
\usepackage{graphicx}
\usepackage{chngpage}
\usepackage{caption}
\usepackage{calc}
\begin{document}
\begin{minipage}[t]{.5\textwidth} % example that almost works
\begin{figure}[H]
\begin{adjustwidth}{-\oddsidemargin-1in}{-\rightmargin}
\centering
\caption{Schooling Time Shares}
\includegraphics[scale=0.5]{Schooling Time Share over Time.png}
\end{adjustwidth}
\end{figure}
\end{minipage}%
\begin{minipage}[t]{.5\textwidth}
\begin{figure}[H]
\begin{adjustwidth}{\oddsidemargin-0.8in}{-\rightmargin}
\centering
\caption{Training Time Shares}
\includegraphics[scale=0.5]{Training Time Share over Time.png}
\end{adjustwidth}
\end{figure}
\end{minipage}
\end{document}
Update: Nach Micos Expertenvorschlägen habe ich Folgendes versucht:
\begin{figure}[ht!]
\begin{adjustwidth}{-1.85cm}{-1.75cm} % choose margin adjustments
\begin{minipage}{0.48\linewidth}
\caption{Schooling Time Shares}
\includegraphics[scale=0.5]{Schooling Time Share over Time.png}
\end{minipage}
\hspace*{\fill} % spread out the two minipages
\begin{minipage}{0.48\linewidth}
\caption{Training Time Shares}
\includegraphics[scale=0.5]{Training Time Share over Time.png}
\end{minipage}
\end{adjustwidth}
\end{figure}
was die folgende Ausgabe erzeugte:
Jetzt sind die Bildunterschriften symmetrisch, was viel besser ist als vorher. Ein letztes verbleibendes Detail ist jedoch: Wenn man (vielleicht unnötigerweise) die Bildunterschriften näher an die Mitte bringen wollte, wie könnte man das tun? Ich dachte, ich könnte vielleicht ein paar Leerzeichen neben der Bildunterschrift einfügen, aber ein hspace* oder mbox verschob die Bildunterschrift nur nach unten, nicht nach rechts.
Update2: Wie unten kommentiert, \caption{\kern0.2cm Schooling Time Shares}
kann der Beschriftungstext leicht nach rechts verschoben werden. width=1.1\linewidth
Ist auch stabiler als scale=0.5
. Endgültiger Code:
\begin{figure}[ht!]
\begin{adjustwidth}{-3.5cm}{-3cm} % choose margin adjustments
\begin{minipage}{0.48\linewidth}
\caption{\kern0.2cm Schooling Time Shares }
\includegraphics[width=1.1\linewidth]{Schooling Time Share over Time.png}
\end{minipage}
\hspace*{\fill} % spread out the two minipages
\begin{minipage}{0.48\linewidth}
\caption{\kern0.2cm Training Time Shares }
\includegraphics[width=1.1\linewidth]{Training Time Share over Time.png}
\end{minipage}
\end{adjustwidth}
\end{figure}
produziert
Update 3: Siehe Bernards Lösung unten mit dem floatrow
Paket. Sie ist vielleicht die prägnanteste.
Antwort1
Ich würde eine einzelne Umgebung verwenden , die Umgebung figure
startenadjustwidth
innendie figure
Umgebung und verwenden Sie zwei minipage
Umgebungen nebeneinander, um die beiden Bilder anzuzeigen. Jedem kann eine eigene zugewiesen werden \caption
. (Die Rahmenlinien im Screenshot stellen die normalen Seitenränder dar.)
\documentclass[letterpaper,11pt]{article}
\usepackage[demo]{graphicx} % omit 'demo' option in real doc
\usepackage[space]{grffile} % for filenames with spaces
\usepackage{float}
\usepackage{chngpage}
\usepackage{caption}
\usepackage{calc}
\usepackage[showframe]{geometry} % omit 'showframe' option in real doc
\begin{document}
\begin{figure}[ht!]
\begin{adjustwidth}{-1.25cm}{-1.25cm} % choose margin adjustments
\begin{minipage}{0.48\linewidth}
\caption{Schooling Time Shares}
\includegraphics[width=\linewidth]{Schooling Time Share over Time.png}
\end{minipage}
\hspace*{\fill} % spread out the two minipages
\begin{minipage}{0.48\linewidth}
\caption{Training Time Shares}
\includegraphics[width=\linewidth]{Training Time Share over Time.png}
\end{minipage}
\end{adjustwidth}
\end{figure}
\end{document}
Nachtrag: Sie erwähnen in einem Kommentar, dass Sie sich nicht sicher waren, ob Sie Unterabbildungen verwenden sollten. Diese Entscheidung hängt hauptsächlich davon ab, wie die beiden Bilder miteinander in Beziehung stehen. Wenn sie nicht besonders verwandt sind, ist es sinnvoll, ihnen separate Bildunterschriften auf Abbildungsebene zuzuweisen. Wenn sie andererseits recht eng miteinander verwandt sind, ist es wahrscheinlich eine gute Idee, sie als subfigure
Unterabbildungen zu behandeln. Glücklicherweise ist dies nicht schwer zu tun: (i) Laden Sie das subcaption
Paket anstelle des Pakets (oder zusätzlich dazu) caption
, (ii) ersetzen Sie es minipage
durch subfigure
(vier Instanzen) und (iii) geben Sie eine neue \caption
Aussage für die Gesamtabbildung an. Die früheren Bildunterschriften, die zuvor mit 1 und 2 nummeriert waren, werden jetzt mit (a) und (b) beschriftet.
\documentclass[letterpaper,11pt]{article}
\usepackage[demo]{graphicx} % omit 'demo' option in real doc
\usepackage[space]{grffile} % for filenames with spaces
\usepackage{float}
\usepackage{chngpage}
\usepackage{subcaption}
\usepackage{calc}
\usepackage{geometry}
\begin{document}
\begin{figure}[ht!]
\caption{Two Types of Time Shares}
\begin{adjustwidth}{-1.25cm}{-1.25cm} % choose margin adjustments
\begin{subfigure}{0.48\linewidth}
\caption{Schooling Time Shares}
\includegraphics[width=\linewidth]{Schooling Time Share over Time.png}
\end{subfigure}
\hspace*{\fill} % spread out the two minipages
\begin{subfigure}{0.48\linewidth}
\caption{Training Time Shares}
\includegraphics[width=\linewidth]{Training Time Share over Time.png}
\end{subfigure}
\end{adjustwidth}
\end{figure}
\end{document}
Antwort2
Eine sehr einfache Lösung mit dem floatrow
Paket. Es ist eine Erweiterung des float
Pakets und Sie sollten es nicht laden, wenn Sie Floatrow laden. Die \FBwidth
Option setzt die Beschriftungsbreite auf die Breite der Abbildung.
\documentclass[letterpaper,11pt]{article}
\usepackage{graphicx} % omit 'demo' option in real doc
\usepackage[space]{grffile} % for filenames with spaces
\usepackage{chngpage}
\usepackage{caption}
\usepackage{calc}
\usepackage[showframe]{geometry} % omit 'showframe' option in real doc
\usepackage{floatrow}
\begin{document}
\begin{figure}[ht!]
\begin{floatrow}
\ffigbox[\FBwidth]{\caption{Perseus Rescuing Andromeda}}
{\includegraphics[width=\linewidth]{Piero_di_Cosimo_2.jpg}}
\ffigbox[\FBwidth]{\caption{The Death of Procris}}
{\includegraphics[width=\linewidth]{Piero_di_Cosimo_1.jpg}}
\end{floatrow}
\end{figure}
\end{document}
Wenn die Zahlen über beide Ränder hinausgehen sollen, können Sie \llap
und \rlap
wie folgt verwenden:
\documentclass[letterpaper,11pt]{article}
\usepackage{graphicx, mathtools} % omit 'demo' option in real doc
\usepackage[space]{grffile} % for filenames with spaces
\usepackage{changepage}
\usepackage{caption}
\usepackage{calc}
\usepackage[showframe]{geometry} % omit 'showframe' option in real doc
\usepackage{floatrow}
\begin{document}
\begin{figure}[ht!]
\begin{floatrow}
\llap{\ffigbox[1.2\linewidth]{\caption{Perseus Rescuing Andromeda}}
{\includegraphics[width =\linewidth]{Piero_di_Cosimo_2.jpg}}}
\rlap{\ffigbox[1.2\linewidth]{\caption{The Death of Procris}}
{\includegraphics[width = 1\linewidth]{Piero_di_Cosimo_1.jpg}}}
\end{floatrow}
\end{figure}
\end{document}