KTUGFaq

KTUG FAQ

로그인:
비밀번호:
가입
Men seldom show dimples to girls who have pimples.
FrontPage › SubfigPackage
subfig 패키지가 subfigure를 대체하게 되었네요. 사용법과 명령어가 조금 바뀌었네요. subfigure 패키지(명령어: \subfigure), subfig 패키지(명령어: \subfloat)는 figure 환경, table 환경 등 float하는 환경 속에서 써야 합니다.
참고. subfig의 subfloat를 table에서 사용한 예가 KTUGOperate:12013에 있습니다.

(!) subfig 패키지 -> see CTAN:macros/latex/contrib/subfig/subfig.pdf



목차

1 Subfigure vs. Subfig
1.1 Q1 subfigure, subfig
1.2 Q2 captcont
1.3 Q4 centering
2 기타
2.1 icase.cls와 충돌
2.2 ccaption.sty와 충돌

1 Subfigure vs. Subfig

1.1 Q1 subfigure, subfig

Q1: (from KTUGOperate:13711) 그림을 삽입하려고 합니다. eps 파일은 tif를 포토샵을 이용해서 eps로 변환한 것과 origin을 이용해서 eps 파일을 형성한 것 두 가지가 있습니다. 그림의 레이아웃 형태는 다음과 같습니다.
--------------------------------------------------



                  (a) figure 1-a



      (b) figure 1-b              (c) figure 1-c
----------------------------------------------------
Figure 1. caption
하나의 그림에 세 개가 삽입된 형태입니다. 그리고, figure 1-b와 figure 1-c가 크기가 다릅니다. 높이는 같은데, 폭이 다릅니다. 이런 경우에는 어떻게 해야할 지 막막하네요... 참고로 그림 파일을 첨부하도록 하겠습니다.===> 첨부하는 방법좀 알려주세요^^ 그럼 도움 부탁드립니다.

A1: 우선 subfigure 패키지를 써 보았습니다. 다음을 컴파일하여 보세요. 아래 첨부한 그림과 같이 됩니다. 세 개의 그림을 한꺼번에 첨부하려면 모두 한 폴더에 넣고 폴더 채로 압축하면 됩니다.
\documentclass{article}
\usepackage{amssymb,graphicx,subfigure}%subfig 패키지를 쓰려면 subfigure->subfig로 바꿈
\begin{document}

\begin{figure}[t]
 \centering \subfigure[This is Fig a]%subfig 패키지를 쓰면 \subfigure->\subfloat로 바꿈
  {\includegraphics[width=\textwidth,height=40mm]{fig5a}}\\ %subfig 패키지를 쓰면 \\이 필요 없음
 \centering\subfigure[This is Fig b]
  {\includegraphics[width=70mm,height=40mm]{fig5b}}\hfill
 \subfigure[This is Fig c]
  {\includegraphics[width=40mm,height=40mm]{fig5c}}
 \caption{$f_L(l)$ and the adjusted frequency histogram of the
          simulated $L_1$}
\end{figure}

\end{document}

subfigure.png

Uploads:fig5.zip <- 여기에 위에서 쓴 그림이 들어 있습니다.

subfig 패키지를 쓸 때는 명령어 등이 조금 다릅니다. 다음을 컴파일하여 보세요.
\documentclass{article}
\usepackage{amssymb,graphicx,subfig}
\begin{document}

\begin{figure}[t]
 \centering \subfloat[This is Fig a]
  {\includegraphics[width=\textwidth,height=40mm]{fig5a}}
 \centering\subfloat[This is Fig b]
  {\includegraphics[width=70mm,height=40mm]{fig5b}}\hfill
 \subfloat[This is Fig c]
  {\includegraphics[width=40mm,height=40mm]{fig5c}}
 \caption{$f_L(l)$ and the adjusted frequency histogram of the
          simulated $L_1$}
\end{figure}
\end{document}

1.2 Q2 captcont

Q2(from KTUGOperate:21300): 다름이 아니고 제가 subfigure 6개를 1개의 그림으로 묶어서 두페이지에 나눠 담고 싶습니다. (1페이지에 3개씩) 중간에 \clearpage 넣어봤는데 이건 안되더라구요. 지금은 2개의 그림(Float)으로 나누어 놨는데 1개의 그림(그룹)으로 하라고 지적이 들어와서요.
첨부 그림: [http]3-2-1.eps <- A2A3에 쓸 그림

A2: 다음 예제들을 컴파일하여 보세요.

subfigure 패키지와 captcont 패키지를 함께 쓴 경우: See [http]captcont.pdf
% -*- TeX:UTF-8 -*-
\documentclass{article}
\usepackage[hangul]{dhucs}
\usepackage{graphicx}
\usepackage{captcont}
\usepackage{subfigure}

\begin{document}

\begin{figure}
%\centering
 \subfigure[하중속도가 음속의 0.03\%일 때 균열의 진행]{%
  \includegraphics[width=0.9\textwidth]{3-2-1}} \\
 \subfigure[하중속도가 음속의 0.05\%일 때 균열의 진행]{%
  \includegraphics[width=0.9\textwidth]{3-2-1}} \\
 \subfigure[하중속도가 음속의 0.10\%일 때 균열의 진행]{%
  \includegraphics[width=0.9\textwidth]{3-2-1}}
 %\caption{하중 속도에 따른 균열의 진행 형태 I (0.03\%, 0.05\%, 0.10\%)}
\end{figure}
%\setcounter{figure}{0}
\begin{figure}
%\centering
 \subfigure[하중속도가 음속의 0.30\%일 때 균열의 진행]{%
  \includegraphics[width=0.9\textwidth]{3-2-1}} \\
 \subfigure[하중속도가 음속의 0.50\%일 때 균열의 진행]{%
  \includegraphics[width=0.9\textwidth]{3-2-1}} \\
 \subfigure[하중속도가 음속의 100\%일 때 균열의 진행]{%
  \includegraphics[width=0.9\textwidth]{3-2-1}}
 \captcont{하중 속도에 따른 균열의 진행 형태 I (0.03\%, 0.05\%, 0.10\%)}\label{crack_propagation1}
\end{figure}

\end{document}
subfig 패키지를 쓴 경우: subfig는 captcont를 별도로 쓸 필요가 없습니다. A3의 예제를 보십시오.

Q3(from KTUGOperate:17102): 그림을 가로로 나란히 2개씩 세로 5줄로 되게 총 9개를 배열해야 하는데요.. (중간 생략) 그림이 너무 많아서 한 페이지 안에 아주 부자연스럽게 들어가는 군요ㅠㅠ 그림의 높이와 폭은 더 이상 줄이면 안되는 상태이구요.. 그림 번호는 그대로 유지하면서 그림 마지막 세개를 다음 장으로 넘기려면 어떻게 해야 할까요? 마지막 그림은 왼쪽으로 붙이고 싶은데 자꾸 중간으로가요..ㅡㅜ..

A3: 다음 예제를 컴파일하여 보세요.

subfig 패키지: subfig는 captcont를 별도로 쓸 필요가 없습니다.
% -*- TeX:UTF-8 -*-
\documentclass{article}
\usepackage{dhucs}
\usepackage{graphicx}
%%%% \usepackage{captcont}
\usepackage{subfig}

\begin{document}

\begin{figure}
\scriptsize
 %\centering
 \subfloat[소표본(패턴1)에서 $\beta_{0}$$90\%$신뢰구간]
  {\includegraphics[width=60mm,height=30mm]{3-2-1}}\hfill
 \subfloat[패턴2에서 $\beta_{0}$$90\%$신뢰구간]
  {\includegraphics[width=60mm,height=30mm]{3-2-1}}\\
 \subfloat[대표본(패턴3)에서 $\beta_{0}$$90\%$신뢰구간]
  {\includegraphics[width=60mm,height=30mm]{3-2-1}}\hfill
 \subfloat[소표본(패턴1)에서 $\beta_{1}$$90\%$신뢰구간]
  {\includegraphics[width=60mm,height=30mm]{3-2-1}}\\
 \subfloat[패턴2에서 $\beta_{1}$$90\%$신뢰구간]
  {\includegraphics[width=60mm,height=30mm]{3-2-1}}\hfill
 \subfloat[대표본(패턴3)에서 $\beta_{1}$$90\%$신뢰구간]
  {\includegraphics[width=60mm,height=30mm]{3-2-1}}
 \caption{This is a continued figure.}
\end{figure}
%\setcounter{figure}{0}
\begin{figure}
\ContinuedFloat
\scriptsize
 %\centering
 \subfloat[대표본(패턴3)에서 $\beta_{2}$$90\%$신뢰구간]
  {\includegraphics[width=60mm,height=30mm]{3-2-1}}\hfill
 \subfloat[소표본(패턴1)에서 $\beta_{2}$$90\%$신뢰구간]
  {\includegraphics[width=60mm,height=30mm]{3-2-1}}\\
 \subfloat[패턴2에서 $\beta_{2}$$90\%$신뢰구간]
  {\includegraphics[width=60mm,height=30mm]{3-2-1}}
 \caption[]{This is a continued figure (cont.)}
\end{figure}

\end{document}


1.3 Q4 centering

Q4(from KTUGOperate:20712): centering로 인해서 그런가 해서 centering을 모두 \begin{center}...\end{center} 로 고쳐서
\begin{center}
\subfigure[horizontal drift force]{\includegraphics
[width=110mm,height=90mm]{fig8-1}}\\
\subfigure[vertical drift force]{\includegraphics
[width=110mm,height=90mm]{fig8-2}}\\
\figcaption{Horizontal (a) and vertical (b) drift force as a
function of the body
submergence $ H/R $ for $ kR=0.4,kA=0.12,h/R=12 $.}
\label{fig:fig8}
\end{center}
로 해 보았지만
Undefined control sequence.
<argument> if\@captype
                       topcap
1.216 \subfigure
                [horizontal drift force]{\includegraphics
[width=110mm,height...
이란 에러가 떠서요... 염치불구하고 답변 기다리겠습니다~

A4(from KTUGOperate:20717): subfigure는 figure 환경, table 환경 등 float하는 환경 속에서 써야 합니다.

참고: subfig 패키지(명령어: \subfloat)를 썼을 때는 꼭 figure 환경을 써야 합니다.

2 기타

2.1 icase.cls와 충돌

(From KTUGOperate:17775) ICASE(제어·자동화·시스템공학회: Institute for Computer Applications in Science and Engineering)의 클래스 파일 icase.cls은 subfig 패키지와 충돌을 일으킵니다. SICE-ICCAS2006.cls도 마찬가지입니다. subfig 패키지 대신 subfigure 패키지를 쓰면 괜찮습니다.

2.2 ccaption.sty와 충돌

ccaption.sty와 subfig.sty를 함께 쓰면
! LaTeX Error: Command \captionwidth already defined.
               Or name \end... illegal, see p.192 of the manual.
라는 오류 메시지가 나타납니다. subfigure 패키지를 쓰면 괜찮습니다. See KTUGOperate:20717

^
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2007-07-23 05:36:29
Processing time 0.0433 sec