私はLaTeXの比較的新しいユーザーであり、論文のテーブルを作成するのはこれが初めてです。表を次のようにしたいと思います:
インターネットで調べた結果、思いついたのは次のコード(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}
まったく機能していません!
コメント
回答
より良いバージョン:
\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}
コードがコンパイルされなかった理由
-
iv id =” 8906241257 “の冒頭で
&
を見逃しました>
最初のエントリを作成して最初の列に移動します。
&&
があります行
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
から
\cmidrule(r{4pt}){2-3}
ここで{4pt}
は、短縮する量です。 \cmidrule(r){4-5}
のように省略できます。
コメント
- ありがとうございます。完璧に動作し、徹底的な説明に感謝します。もう1つの簡単な質問-テーブルの見出しの配置は少しばかげているように見えます-私の画像。それをより美的に美しく見せるためのオプションは何ですか?見出しを1行に収めることはできますか?
- @Chris編集しました。変更はマージンと列の幅にあります。これは、このような長いヘッダーで可能な限り最良です。 :0
- @Chris補足として、ここで感謝を言うことは、賛成(すべての良い答え)と受け入れる(より有用な答え)ことによって最もよく伝えられます。疑問がある場合は、どのように回答を受け入れますか?を参照してください:)
- こんにちは@HarishKumar、私は賛成しましたあなたの答えと他の1つ:)。もう1つの簡単な質問-テーブルの空のセルに”-“を入力するにはどうすればよいですか。 ” \-“を試しましたが、セルが空白のままです。
- @Chrisありがとうございます。 :)。
-
、(no \)以上の$-$
またはさらに良い---
のみを配置する必要があります。お役に立てば幸いです。
回答
booktabs
パッケージ(見栄えの良い、つまり、間隔の広い水平線を取得するため)、tabularx
パッケージを使用して、4つの等しい幅を取得する作業を簡素化することもお勧めします。列。
\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
。代わりに、基本的な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}
コメント
- こんにちは-はい、booktabsの見た目がはるかに優れていることに同意します。 OPにある画像はWordからのもので、どこかに行かなければならなかったので投稿を急いでいました。 縦線は、Word ” table “ツールに標準で付属しているためにありました。
回答
以下をご覧ください:
\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}、およびそれぞれ行は\\で終わる必要があります(”コース数… “行がありません)。列の合計は複数列はテーブルの列の総数と同じである必要があるため、行の先頭に&を配置して、空の最初の列を作成します。