숫자와 일치하는 캡션

숫자가 붙도록 캡션 뒤에 라벨을 붙입니다.

숫자와 일치하는 캡션

상호 참조는 LaTeX가 워드 프로세서보다 더 나은 기능 중 하나입니다. 절대로 “그림 3”을 손으로 입력하지 마세요. 대신에 그림에 라벨을 붙이고 LaTeX가 언급된 모든 곳에 번호를 입력하도록 하여 아무리 순서를 바꾸거나 삽입하거나 삭제하더라도 번호가 정확하게 유지되도록 합니다. 이 메커니즘에는 거의 모든 사람이 한 번 이상 실수를 저지르는 한 가지 규칙이 있습니다. \caption\label의 순서가 중요합니다.

순서가 중요한 이유

\caption 명령은 두 가지 작업을 수행합니다. 그림이나 표 아래에 캡션 텍스트를 인쇄하고 카운터를 단계적으로 진행하여 이 플로트를 그림 3으로 바꿉니다. \label 명령은 사람들이 예상하는 것보다 더 멍청한 작업을 수행합니다. 가장 최근에 할당된 숫자, 발생한 일이 무엇이든 기록합니다. “그림 내부”에 있는지 전혀 모릅니다. 따라서 레이블은 캡션 뒤에 와야 합니다.

\caption{A neat diagram.}
\label{fig:neat}

\caption 앞에 \label을 넣으면 캡션이 아직 숫자 카운터를 밟지 않았기 때문에 레이블은 완전히 다른 곳, 일반적으로 현재 섹션에서 가장 최근 번호를 캡처합니다. 그림이 실제로 그림 7인데 텍스트에 “그림 2.4 참조”라고 표시됩니다. 이것이 전형적인 증상입니다. 그림 번호 대신 섹션 번호를 가리키는 참조는 거의 항상 레이블이 너무 일찍 배치되었음을 의미합니다. 가장 안전한 습관은 그림과 표 모두에서 항상 \caption 바로 다음 줄에 \label을 쓰는 것입니다.

라벨 참조

텍스트에 다음과 같이 참조를 작성하세요.

Figure~\ref{fig:neat}

\ref{fig:neat}는 단순한 숫자로 확장되며 “Figure”라는 단어를 직접 제공합니다. 둘 사이의 ~는 줄 바꿈되지 않는 공백이므로 LaTeX가 “Figure” 다음 줄을 끝내고 “3”으로 다음 줄을 시작하는 것을 방지합니다. fig:, tab:, sec:eq:와 같은 접두사는 순수한 규칙이며 LaTeX는 이를 해석하지 않지만 레이블을 읽을 수 있게 유지하고 그림과 표가 실수로 이름을 공유하는 것을 방지합니다.

``pageref{fig:neat}`는 그림이 표시된 페이지 번호를 제공하며, 플로트가 언급된 내용에서 멀리 표류할 수 있는 긴 문서에 유용합니다. 참조 명령에 대한 전체 둘러보기는 모든 명령 설명을 참조하세요.

두 번 컴파일하고 다른 함정

참조는 컴파일러 실행을 통해 확인됩니다. 첫 번째 단계에서는 ‘.aux’ 파일에 레이블 위치를 쓰고 두 번째 단계에서는 해당 위치를 다시 읽습니다. 두 번째 단계까지 참조는 굵은 물음표로 인쇄되므로 PDF의 ??는 일반적으로 “다시 컴파일”을 의미할 뿐 아무것도 손상되지 않는다는 의미입니다. Oleafly를 포함한 대부분의 편집자는 자동으로 패스를 다시 실행합니다. ??가 반복 컴파일 후에도 남아 있으면 레이블이 존재하지 않습니다. 가능한 원인은 레이블 이름에 오타가 있거나 \label을 남겨두고 삭제한 \caption입니다.

플로트와 잉크(으)로 돌아가기