미니페이지 및 adjustwidth와 캡션이 잘못 정렬됨

미니페이지 및 adjustwidth와 캡션이 잘못 정렬됨

한 페이지에 두 개의 큰 그림을 나란히 맞추려고 합니다. minipage와 adjustwidth를 사용해 보았으나 아래와 같이 두 번째 그림의 캡션이 계속 왼쪽으로 잘못 정렬되었습니다.

겉보기에 관련이 있는 것처럼 보이는 여러 질문을 읽어보았지만 이를 파악할 수 없었습니다. 제안 사항 중 하나에 따라 하위 그림을 사용해 보았지만 상황이 더 나빠진 것 같습니다.

어떤 조언이라도 감사하겠습니다. 감사해요.

\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}

시분할

업데이트: Mico의 전문가 제안 후 다음을 시도했습니다.

\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}

다음과 같은 출력이 생성되었습니다.

시분할2

이제 캡션이 대칭이 되어 이전보다 훨씬 좋아졌습니다. 하지만 마지막으로 남은 부분은 다음과 같습니다. 캡션을 (아마도 불필요하게) 중앙에 더 가깝게 만들고 싶다면 어떻게 할 수 있습니까? 캡션 옆에 몇 개의 공백을 추가할 수 있을 거라 생각했는데, hspace*나 mbox는 캡션을 오른쪽이 아닌 아래쪽으로만 이동시켰습니다.

업데이트 2: 아래에 설명된 대로 \caption{\kern0.2cm Schooling Time Shares}캡션 텍스트를 약간 오른쪽으로 이동할 수 있습니다. 또한 width=1.1\linewidth에 비해 더 안정적입니다 scale=0.5. 최종 코드:

\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}

생산하다

시분할3

업데이트 3: 패키지와 함께 아래 Bernard의 솔루션을 참조하세요 floatrow. 가장 간결할 수도 있습니다.

답변1

단일 환경을 사용하고 환경 figure을 시작하겠습니다.adjustwidth내부에환경 figure을 사용하고 두 minipage환경을 나란히 사용하여 두 이미지를 표시합니다. 각각은 자신만의 \caption. (스크린샷의 프레임 라인은 일반적인 페이지 여백을 나타냅니다.)

여기에 이미지 설명을 입력하세요

\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}

부록: 하위 그림을 사용해야 하는지 확신할 수 없다고 댓글에서 언급하셨습니다. 그 결정은 주로 두 이미지가 서로 어떻게 관련되어 있는지에 따라 달라집니다. 특별히 관련이 없는 경우 별도의 그림 수준 캡션을 할당하는 것이 좋습니다. 반면에 매우 밀접하게 관련되어 있는 경우에는 subfigures로 처리하는 것이 좋습니다. 다행스럽게도 그렇게 하는 것은 어렵지 않습니다. (i) subcaption패키지 대신(또는 추가로) 패키지를 로드하고 caption, (ii) (4개의 인스턴스) minipage로 바꾸고, (iii) 전체 그림에 대한 subfigure새 설명을 제공합니다 . \caption이전에 1과 2로 번호가 매겨졌던 이전 캡션은 이제 (a)와 (b)로 표시됩니다.

여기에 이미지 설명을 입력하세요

\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}

답변2

패키지를 사용한 매우 간단한 솔루션입니다 floatrow. 이는 패키지의 확장 float이므로 floatrow를 로드할 때 로드하면 안 됩니다. 옵션 은 \FBwidth캡션 너비를 그림의 너비로 설정합니다.

\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} 

여기에 이미지 설명을 입력하세요

숫자가 양쪽 여백을 모두 넘치도록 하려면 다음과 같이 \llap및를 사용할 수 있습니다.\rlap

\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} 

여기에 이미지 설명을 입력하세요

관련 정보