저는 상대적으로 Latex를 처음 사용하는 사용자입니다. 제 논문을위한 테이블을 구성하는 것은 이번이 처음입니다. 표가 다음과 같이 보이기를 원합니다.
인터넷에서 조사한 결과, 다음 코드 (라텍스 코드와 단어 문서 간의 열 제목 차이 무시)
\begin{table}[htbp] \caption{Minimum Requirements for Automatic Readmission into the Commerce Faculty} \centering \begin{tabular}{lrrrr} \toprule \multicolumn{2}{c}{{BCom} & \multicolumn{2}{c}{B.Bus.Sci} \\ \cmidrule{2-3} \cmidrule{4-5} & Number of courses required to pass & Cumulative Total of Courses && Number of courses & Cumulative Total of Courses \midrule First year & 4 & 8 & 4 & 18 \\ \bottomrule \end{tabular} \label{table:mr} \end{table}
아무 작동하지 않습니다!
댓글
li>
답변
더 나은 버전 :
\documentclass{article} \usepackage{booktabs} \usepackage[margin=1in]{geometry} \usepackage{array} \newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}} \begin{document} \begin{table}[htbp] \caption{Minimum Requirements for Automatic Readmission into the Commerce Faculty} \centering \begin{tabular}{@{}p{0.12\textwidth}*{4}{L{\dimexpr0.22\textwidth-2\tabcolsep\relax}}@{}} \toprule & \multicolumn{2}{c}{BCom} & \multicolumn{2}{c}{B.Bus.Sci} \\ \cmidrule(r{4pt}){2-3} \cmidrule(l){4-5} & Number of courses required to pass & Cumulative Total of Courses & Number of courses & Cumulative Total of Courses\\ \midrule First year & 4 & 8 & 4 & 18 \\ \bottomrule \end{tabular} \label{table:mr} \end{table} \end{document}
코드가 컴파일되지 않은 이유는 무엇입니까?
-
시작 부분에
&
를 놓쳤습니다.\multicolumn{2}{c}{{BCom} & \multicolumn{2}{c}{B.Bus.Sci} \\
첫 번째 열에 들어갈 첫 번째 항목을 만듭니다.
-
다음에
&&
이 (가) 있습니다. 줄Number of courses required to pass & Cumulative Total of Courses && Number of courses & Cumulative Total of Courses
&
여야하며&
줄 시작 부분에 있습니다. 그리고이 줄 끝에서\cmidrule
바로 앞의\\
를 놓쳤습니다.
이제 수정
위의 모든 사항을 수정 한 후 새로운 열 유형을 도입했습니다. array
패키지 도움말. :
\usepackage{array} \newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}}
\raggedright
가 추가되었습니다. 열이 좁을 수 있고 단어의 길이가 다를 수 있으므로 추악한 양쪽 맞춤 효과를 방지합니다. 이것은 불량 상자도 처리합니다.
이 L
열을 너비로 사용했습니다.
\dimexpr0.22\textwidth-2\tabcolsep\relax
~
*{4}{L{\dimexpr0.22\textwidth-2\tabcolsep\relax}}
반복하는 대신
부담으로 \cmidrule
는 l
eft 또는 r
ight에서
\cmidrule(r{4pt}){2-3}
여기에서 {4pt}
는 단축 금액입니다. \cmidrule(r){4-5}
처럼 생략 할 수 있습니다.
댓글
- 감사합니다. 완벽하게 작동하며 철저한 설명에 감사드립니다. 또 다른 간단한 질문입니다. 표 제목의 정렬이 약간 어리석은 것처럼 보입니다. 내 이미지 입니다. 더보기 좋게 보이게하는 옵션은 무엇입니까? 제목을 한 줄에 맞출 수 있습니까?
- @Chris 내가 편집했습니다. 변경 사항은 여백과 열 너비입니다. 이것은 긴 헤더에서 가능한 가장 좋습니다. : 0
- @Chris 참고로 여기에서 감사를 표하는 것은 찬성 (모든 좋은 답변)과 수락 (더 유용한 답변)을 통해 가장 잘 전달됩니다. 의문이있는 경우 답변을 어떻게 수락합니까? 를 참조 할 수 있습니다. 🙂
- 안녕하세요 @Harish Kumar, 제가 찬성했습니다. 당신의 대답과 다른 하나 :). 또 다른 간단한 질문입니다. “-“를 사용하여 표의 빈 셀을 채우는 방법입니다. ” \-“를 시도했지만 셀이 비어 있습니다.
- @Chris 감사합니다. :).
-
, (no \) 이상$-$
또는 더 나은---
만 입력해야합니다. . 도움이 되었기를 바랍니다.
답변
booktabs
패키지 (예를 들어, 잘 보이게하기 위해, 즉 간격이 좋은 수평선), 4 개의 동일한 너비를 얻는 작업을 단순화하기 위해 tabularx
패키지를 사용하는 것이 좋습니다. 열.
\documentclass{article} \usepackage{booktabs,tabularx} \usepackage[margin=1in]{geometry} % set margins to meet your document"s needs \newcolumntype{Y}{>{\raggedright\arraybackslash}X} % use ragged-right, not fully-justified, look in narrow columns \begin{document} \begin{table}[t] \caption{Minimum Requirements for Automatic Readmission into the Commerce Faculty} \label{table:mr} %\centering % not needed, since table is as wide as text block \begin{tabularx}{\textwidth}{@{}lYYYY@{}} \toprule &\multicolumn{2}{c}{\bfseries BCom} &\multicolumn{2}{c}{\bfseries B.Bus Sci} \\ \cmidrule(lr){2-3} \cmidrule(l){4-5} &Number of courses required to pass &Cumulative Total of Courses & Number of courses & Cumulative Total of Courses\\ \midrule First year & 4 & 8 & 4 & 18 \\ \bottomrule \end{tabularx} \end{table} \end{document}
부록 : 참고로 booktabs
패키지의 명령을 사용하면 게시물에 표시되는 표의 모양을 얻을 수 없습니다 . 이러한 수직선과 수평선이 모두 필요한 경우 “\toprule
, \bottomrule
, 및 \cmidrule
. 대신 basic-LaTeX \hline
지침을 사용하세요. (물론 tabularx
패키지를 사용하여 표의 2 ~ 5 열에 대해 동일한 너비의 열 생성을 단순화하십시오.)
이러한 수정으로 인해 아래 표에 나와 있습니다.”북탭 모양”(세로선 없음, 전체적으로 더 적은 가로줄, 적절한 간격 규칙)이 “스프레드 시트 모양”이라고 부르는 것보다 훨씬 낫다는 데 동의하시기 바랍니다.
\documentclass{article} \usepackage{tabularx} \usepackage[margin=1in]{geometry} % choose margin as needed \newcolumntype{Y}{>{\raggedright\arraybackslash}X} \begin{document} \begin{table}[h!] \caption{Minimum Requirements for Automatic Readmission into the Commerce Faculty} \label{table:mr} \begin{tabularx}{\textwidth}{|l|Y|Y|Y|Y|} \hline &\multicolumn{2}{c|}{\bfseries B. Com} &\multicolumn{2}{c|}{\bfseries B. Bus. Sci} \\ \hline & Number of courses required to pass & Cumulative Total of Courses & Number of courses required to pass & Cumulative Total of Courses \\ \hline First Year & 4 & 8 & 4 & 18 \\ \hline Second Year & 10 & 16 & 11 & 16 \\ \hline Third Year & 18 & 24 & 20 & 25 \\ \hline \end{tabularx} \end{table} \end{document}
댓글
- 안녕하세요-예, 북탭이 훨씬 낫다는 데 동의합니다. 내 OP에 있던 이미지는 Word에서 가져온 것이고, 어딘가에 가야했기 때문에 서둘러 게시했습니다. 수직선은 Word ” 표 ” 도구에서 표준으로 제공 되었기 때문에 존재했습니다.
답변
다음을 확인하세요.
\documentclass{scrartcl} \usepackage{booktabs} \begin{document} \begin{table}[htbp] \caption{Minimum Requirements for Automatic Readmission into the Commerce Faculty} \centering \begin{tabular}{p{0.2\textwidth}p{0.2\textwidth}p{0.2\textwidth}p{0.2\textwidth}p{0.2\textwidth}} \\ \toprule & \multicolumn{2}{c}{BCom} & \multicolumn{2}{c}{B. Bus Scii} \\ \midrule & Number of courses required to pass & Cumulative Total of Courses & Number of courses & Cumulative Total of Courses \\ \midrule First year & 4 & 8 & 4 & 8 \\ Second year & 10 & 16 & 11 & 16 \\ Third year & 18 & 24 & 20 & 25 \\ \bottomrule \end{tabular} \end{table} \begin{table}[htbp] \caption{Minimum Requirements for Automatic Readmission into the Commerce Faculty} \centering \begin{tabular}{p{0.18\textwidth}p{0.18\textwidth}p{0.18\textwidth}p{0.18\textwidth}p{0.18\textwidth}} \\ \toprule & \multicolumn{2}{c}{BCom} & \multicolumn{2}{c}{B. Bus Scii} \\ \midrule & \multicolumn{1}{p{3.5cm}}{Number of courses required to pass} & Cumulative Total of Courses & \multicolumn{1}{p{2cm}}{Number of courses} & Cumulative Total of Courses \\ \midrule First year & 4 & 8 & 4 & 8 \\ Second year & 10 & 16 & 11 & 16 \\ Third year & 18 & 24 & 20 & 25 \\ \bottomrule \end{tabular} \end{table} \end{document}
답변
해볼 수 있습니다
\documentclass{amsart} \usepackage{booktabs} \begin{document} \begin{table}[htbp] \caption{Minimum Requirements for Automatic Readmission into the Commerce Faculty} \centering \begin{tabular}{@{}lp{3cm}p{3cm}p{3cm}p{3cm}@{}} \toprule & \multicolumn{2}{c}{BCom} & \multicolumn{2}{c}{B.Bus.Sci} \\ \cmidrule(r){2-3} \cmidrule(l){4-5} \\ & Number of courses required to pass & Cumulative total of courses & Number of courses & Cumulative total of courses \\ \midrule \\ First year & 4 & 8 & 4 & 18 \\ \bottomrule \end{tabular} \label{table:mr} \end{table} \newcommand*{\head}[1]{\parbox{2cm}{\begin{flushright}#1\end{flushright}}} \begin{table} \caption{Minimum Requirements for Automatic Readmission into the Commerce Faculty} \centering \begin{tabular}{@{}lrrr@{}} \toprule & Year & \head{Courses required to pass} & \head{Cumulative total} \\ \midrule \\ BCom & 1 & 4 & 8 \\ & 2 & 4 & 8 \\ & 3 & 4 & 8 \\ B.Bus Sci & 1 & 4 & 18 \\ & 2 & 4 & 8 \\ & 3 & 4 & 8 \\ \bottomrule \end{tabular} \label{table:mr.2} \end{table} \end{document}
bookstable
의 세부 사항을 모르면 여기에 오타가 있습니다. {{BCom} 행은 \\로 끝나야합니다 (” 강좌 수 … ” 행에 누락 됨). 여러 열은 테이블의 총 열 수와 같아야하므로 빈 첫 번째 열을 생성하려면 행 시작 부분에 &를 입력하세요.