Q&A 마당은 텍 관련 질문/답변을 위해 만들었습니다.

  • 로그인 없이 자유롭게 글을 읽고 쓸 수 있는 철학은 처음과 같이 계속됩니다.
  • 질문 전에 아래를 읽어 보세요. 좋은 질문이 좋은 답을 받을 수 있는 좋은 방법입니다.
    • 질문에 맞는 제목을 붙이세요. 질문의 내용과 관련없는 "고수님", "긴급질문", "도와주세요"와 같은 제목은 답이 잘 올라오지 않습니다. 이 게시판에 올라오는 모든 글은 질문입니다. 굳이 [질문], [Q]를 적으실 필요도 없습니다.
    • 내용을 충실히 적어 주시고, 같은 상황을 재현할 수 있는 최소한의 예제가 같이 있어야 합니다.
    • 최소 예제는 "Minimal working example"을 읽어 보세요.
  • 파일을 첨부하실 때에는 가능한 압축하여 파일 크기를 줄여서 올려주시길 바랍니다.
  • 개인적으로 사용하신 글꼴이 들어 있는 경우, preparefont.sty에 관한 답변을 참조하세요.
  • 스팸 글을 막기 위하여 짧은 시간 내에 다시 글이 등록되는 IP를 막거나, 광고 글을 막기 위하여 금지어로 .com, .net 등을 설정하고 있습니다. 다소간의 불편함이 있으시더라도 양해 바랍니다.
    • 금지어에서 stackexchange, stackoverflow, ctan, overleaf, , github, google.com, gmail.com, .org, .io, sil.org, wiki.com, tistory.com등은 해제하였습니다.
  • MathJax를 이용한 수식조판을 사용하실 수 있습니다. 여기를 참조하세요.
  • 사용하는 편집기는 CKeditor입니다.
    • 편집기에서 [enter]를 누르면 <p> 태그가 들어가고, 문단으로 생각하고 한 줄을 비웁니다.
    • 글줄만 바꾸려면 [shift-enter]를 누르면 <BR> 태그가 들어가므로 용도에 맞게 나누어 쓸 수 있습니다.
    • 수식를 문서내에 삽입하시려면 에디터를 툴바에서 [소스]를 눌러 HTML로 입력할 수 있게 바꾸신 후 <pre> </pre> tag를 사용하셔서 <pre> 여러 줄의 수식 </pre>처럼 입력하시면 좋습니다.

Progress

그림을 나란히 배열하는 많은 방법이 있겠지만, subfig 패키지를 이용하는 법을 보여드립니다.

(비슷한 이름의 subfigure 패키지도 있는데 사용방법은 대동소이합니다.)

\subfloat[서브플롯 그림 차례에 들어갈 캡션][캡션]{그림삽입명령}

캡션을 넣고 싶지 않으면 비워도 됩니다.

\subfloat{그림삽입명령}

luamplib_test.png
%% luamplib_test.tex

\documentclass{article}

\usepackage{luamplib}
\usepackage{subfig}

\usepackage[hangul]{kotex}

\begin{document}

\begin{figure}
\centering{%
\subfloat[][첫 번째 그림: clockwise]{%
\begin{mplibcode}
 beginfig(1);
    numeric u; u=1.25cm;
  z[1]=origin;
  z[2]=(-2u,0);
  z[3]=(2u,0);
  z[4]=(0,1.5u);
  z[5]=(0,-1.5u);
  z[6]= (sqrt2*u/2,-sqrt2*u/2);
  
  drawarrow z[2]..z[3];
  drawarrow z[5]..z[4];
 
 drawarrow z[6]..(0,-u)..(-u,0)..(0,u)..(u,0)..z[6];
 
  label.lrt (btex $(1,0)$ etex, (u,0));
  label.lrt (btex $O$ etex, z[1]);
  label.lrt (btex $C_1$ etex, z[6]);
  label.rt (btex $x$ etex, z[3]);
  label.lft (btex $y$ etex, z[4]);
 
  endfig;
\end{mplibcode}
}
\quad
\subfloat[][두 번째 그림: counterclockwise]{%
\begin{mplibcode}
 beginfig(1);
    numeric u; u=1.25cm;
 
  z[1]=origin;
  z[2]=(-2u,0);
  z[3]=(2u,0);
  z[4]=(0,1.5u);
  z[5]=(0,-1.5u);
 z[6]= (sqrt2*u/2,sqrt2*u/2);
 
  drawarrow z[2]..z[3];
  drawarrow reverse (z[4]..z[5]);
 
 drawarrow z[6]..(0,u)..(-u,0)..(0,-u)..(u,0)..z[6];
 
  label.lrt (btex $(1,0)$ etex, (u,0));
  label.lrt (btex $O$ etex, z[1]);
  label.urt (btex $C_2$ etex, z[6]);
  label.top (btex $x$ etex, z[3]);
  label.lft (btex $y$ etex, z[4]);

  endfig;
\end{mplibcode}
}
}
\caption{luamplib으로 그림 두 개를 그린 뒤 subfig 패키지를 이용하여 나란히 붙인다.}
\end{figure}

\end{document}

===

luamplib을 이용하여 MetaPost 그림을 삽입하기로 하였으면, 기본적인 MetaPost 문법을 좀 숙지해놓을 필요가 있겠습니다.

  • x축, y축에 화살표를 그을 때 사용한 drawarrow 명령,
  • 두 점을 잇고 봤더니 화살촉의 방향이 거꾸로 나온다면 시점 좌표와 종점 좌표를 바꿔도 되지만 다음과 같이 해도 됩니다.
    drawarrow reverse (종점, 시점) % 괄호로 감싸주는 것에 유의할 것!
  • 특정 점을 기준으로 label을 붙일 때 그 위치를 정하는 명령: 예를 들면 다음과 같습니다.
    • lft: 해당 점의 왼쪽(left)
    • rt: 해당 점의 오른쪽(right)
    • top: 해당 점의 위(top)
    • bot: 해당 점의 아래(bottom)
    • ulft: 해당 점의 왼쪽 위(upper left, 북서쪽 방향)
    • urt: 해당 점의 오른쪽 위(upper right, 북동쪽 방향)
    • llft: 해당 점의 왼쪽 아래(lower left, 남서쪽 방향)
    • lrt: 해당 점의 오른쪽 아래(lower right, 남동쪽 방향)
  • 그리고 좌표를 특정할 때 스퀘어루트는 sqrt로 써야합니다. \sqrt가 아닙니다. (올려주신 파일을 컴파일하면 이것 때문에 TeX Capacity 에러가 생깁니다. 좀처럼 보기 드문 에러임)
    z[6]= (sqrt2*u/2,sqrt2*u/2);

더 자세한 것은 MetaPost 매뉴얼을 참고하시기 바랍니다.

> texdoc metapost




XE Login