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>처럼 입력하시면 좋습니다.
표에서 세로선 끊어짐 문제 및 가로선 굵은줄 추가에 관한 질문
2023.12.29 14:08
안녕하세요.
overleaf를 통해 문서를 작성하던 중에 의문사항이 있어 회원님들께 질문 올리게 되었습니다.
LaTex 표 작성에 관하여 2가지 질문을 여쭈어보고 싶습니다.
1. booktabs 패키지를 이용하여 표를 만들 때, 세로선이 끊어지는 문제는 어떻게 해결해야 하나요?
아무 패키지도 적용하지 않고 LaTex에서 기본적으로 제공하는 스타일로 표를 만드니 셀 안의 간격이 좁아 보여서, booktabs 패키지를 활용하여 표를 만들었는데, 아래 그림과 같이 세로선이 중간에 계속 끊어집니다.
세로선을 아예 표시하지 않은 채 표를 만드는 방법도 있겠지만, 제가 만들고자 하는 표는 세로선이 있어야 내용 이해가 좀 더 용이할 듯하여, 세로선을 넣고자 합니다.
세로선이 중간에 끊어지지 않은 형태로 표를 만들고 싶은데, 이를 어떻게 해결하면 좋을까요? booktabs가 아니라 다른 패키지를 사용해야 하는 걸까요?
2. 아래 그림에서 Question 5와 Question 6 사이, 그리고 Question 7과 Galadriel 사이에 굵은 줄을 넣고 싶습니다.
표에 굵은 줄을 추가하는 다른 예시들을 살펴보니 직접 줄의 굵기를 정해야 하는 것 같던데, 그렇다면 수동으로 일일히 줄의 굵기를 설정하는 수밖에 없나요?
아래에 예제 파일을 첨부하였습니다.
LaTex를 접한지 한 달도 채 되지 않아서 아직 미숙한 부분이 많지만... 혹시나 제 질문에 대한 해답이나 제 코드에 대해 조언을 남기고 싶으시다면 언제든 답변 부탁드립니다.
감사합니다.
댓글 4
-
noname
2023.12.29 17:21
-
anaud
2024.01.01 14:18
감사합니다! 세로줄을 쓰려면 booktabs보단 다른 패키지를 쓰는 게 더 좋겠군요...
-
noname
2023.12.31 10:37
tblr로 위의 표를 그려봤습니다. multirow, multicolumn은 \SetCell이 편하기는 한데, (표의 body를 정결하게 유지하는 것도 중요하다고 이미 말한 바가 있어서) option에서 cell로 선언하는 방법을 보였습니다.
\begin{tblr}{ colspec={c|c|c|c}, hlines, hline{1,8,10,Z}={.8pt,teal3}, hline{2}={dashed}, cell{1}{1}={r=2}{}, cell{1}{2}={c=2}{}, cell{2}{2-Z}={c,m}, cell{3}{4}={r=5}{}, cell{8}{4}={r=2}{}, cell{Y}{1}={r=2}{}, cell{Y,Z}{2}={c=2}{}, cell{X}{2}={c=3}{} } Questions & Factors 1 & & Factors 2 \\ % row1 & { Frodo \\ Sam \\ Pippin } & { Merry \\ Aragorn \\ Legolas \\ Gimli } & { Boromir \\ Gandalf } \\ % row2 Question 1 & 111 & 22 & 333 \\ Question 2 & 444 & 55 & \\ Question 3 & 666 & 77 & \\ Question 4 & 888 & 99 & \\ Question 5 & 000 & 12 & \\ Question 6 & 23 & 34 & 455 \\ Question 7 & 56 & 67 & \\ Galadriel & 789 & 910 & Total \\ Celeborn & 313 & 414 & 515 \\ Bilbo & 616 & & \\ Sauron & Saruman & & 717 \\ & Balog & & 818 \\ \end{tblr}
선의 색상이나 점선 따위는 임의로 넣어본 것입니다.
-
anaud
2024.01.01 14:21
오호 감사합니다. 이 방식으로도 표가 깔끔하게 그려지네요.
1. booktabs는 원래 세로줄이 없는 표를 그리는 것입니다. booktabs를 쓸 거라면 세로선을 쓰지 않는 것이 좋습니다.
그러나, 부득이하여 세로선을 그려야 되고, booktabs의 \toprule, \midrule 등도 쓰고 싶으며, 세로선과 가로선이 만나게 하고 싶다면, 다음과 같은 트릭이 가능하겠습니다.
\arraystretch 값은 적절하게 보기 좋은 정도로 주십시오. 이제 이렇게 하면 \cmidrule이 문제가 될 터인데, 왼쪽 끝까지 붙여보아도(즉 trim 설정을 하지 않아도) 세로선과 살짝 어긋나는 느낌이 들 수 있습니다. 이 때는
이렇게 trim 값에 선굵기에 해당하는 음수값을 주어서 세로선과 겹치게 할 수 있습니다. r로 만나는 곳은 trim을 주지 않아도 이런 일이 없기 때문에 (r) 부분은 모두 제거합니다.
2. 굵은 가로선은 \specialrule로 그릴 수 있습니다. 필요하다면, 새로운 rule 명령을 작성하세요.
테스트해본 파일을 첨부합니다. 참고하십시오.
===
저라면 tabularray로 이런 표를 그렸을 것 같습니다. 이게 뭔가 궁금하시다면
http://www.ktug.org/xe/index.php?document_srl=267094
이 글에 첨부된 문서를 한번 보십시오. 이 질문에서 제기된 문제와 비슷한 케이스에 관한 부분도 있어 보입니다.