
ieeetran ラテックスで複数列のテーブルを描画する際に問題があります。
私が描きたいのはこれです:
しかし、私はそれを管理することができませんでした。OBR 行と AR 行を追加する際に問題が発生しています。いくつかのコードを試しましたが、どれも機能しませんでした。最後に試したのは次のコードです。
\begin{table}[!h]
\centering
\caption{caption}
\label{tab:table}
\begin{small}
\begin{tabular}{|l|l|l|l|}
\hline
& \multicolumn{6} {c|} {\bfseries Dataset} & {\bfseries A} &{\bfseries B} & {\bfseries C}\\
\cline{2-7}
{\bfseries } & {\bfseries OBR} &{\bfseries AR} & {\bfseries OBR} &{\bfseries AR} & {\bfseries OBR} &{\bfseries AR}\\
\hline
D1 & 2.1\% & 2.1\% 2.1\% & 2.1\% & 2.1\% 2.1\% \\
\hline
D2 & 11.6\% &11.6\% & 11.6\% & 2.1\% & 2.1\% 2.1\%\\
\hline
D3 & 5.5\% & 5.5\% & 5.5\% & 2.1\% & 2.1\% 2.1\% \\
\hline
\end{tabular}
\end{small}
\end{table}
この表を描くのに協力していただける方はいらっしゃいますか? 大変ありがたく思います。
答え1
いくつかの最初のコメント:
あなたが使用しているのは
multirow
パッケージを使用して、複数の列を印刷しようとします (言及されていませんが、自然な選択のようです)。私は、
siunitx
表内の小数点の位置を揃えるパッケージです。の
booktabs
\toprule
パッケージのドキュメントには、LaTeX で見栄えの良い表を作成するための優れたアドバイスが記載されています。以下ではこれを使用しましたが、 、\midrule
、\bottomrule
を に置き換えることで依存関係を削除できます\hline
。
現在の例がコンパイルされない理由は次のとおりです。
には
tabular
列が足りません。オプション を渡しましたが{|l|l|l|l|}
、これは各列の間に縦線がある左揃えの 4 つの列です。元のテーブルは最も幅が広い場合、7 つの列があり、それらすべてを考慮する必要があります。したがって、これを のように変更する必要があります{|l|l|l|l|l|l|l|}
。を使用する場合は
siunitx
、 を使用します{lSSSSSS}
。 は、データの小数点の位置を揃えるS
オプションですsiunitx
。このパッケージを使用しない/使用できない場合は、自由に元に戻してください。は
multicolumn{6} {c|}
、データセット見出しを6列に入力すると、さらに3列が残りますあ、BそしてCつまり、この行には全体で 9 つの列があり、これは必要以上に多いことになります。代わりに、次のようなものが望ましいです:
\multirow{2}{*}{Dataset} & \multicolumn{2}{c}{A} & \multicolumn{2}{c}{B} & \multicolumn{2}{c|}{C} \\
c|
最後に垂直線が得られるように、最後の列を作成する必要があります。2 行目では、最初のセル (前の行の **Dataset* によって入力されます) をスキップし、残りの部分を通常どおり入力します。
& O.B.R & A.R & O.B.R & A.R & O.B.R & A.R \\
を使用する場合は
siunitx
、ピリオドが小数点として読み取られないように、これらを中括弧で囲む必要があります。そうしないと、これらの数字を揃えることができないため、エラーが発生します。& {O.B.R} & {A.R} & {O.B.R} & {A.R} & {O.B.R} & {A.R} \\
これらの提案を念頭に置いてコードを変更すると、次のようになります。
\documentclass{article}
\usepackage{multirow}
\begin{document}
\begin{table}
\begin{tabular}{|l|l|l|l|l|l|l|}
\hline
\multirow{2}{*}{Dataset} &
\multicolumn{2}{c}{A} &
\multicolumn{2}{c}{B} &
\multicolumn{2}{c|}{C} \\
& O.B.R & A.R & O.B.R & A.R & O.B.R & A.R \\
\hline
D1 & 2.1\% & 2.1\% & 2.1\% & 2.1\% & 2.1\% & 2.1\% \\
\hline
D2 & 11.6\% & 11.6\% & 11.6\% & 11.6\% & 11.6\% & 11.6\% \\
\hline
D3 & 5.5\% & 5.5\% & 5.5\% & 5.5\% & 5.5\% & 5.5\% \\
\hline
\end{tabular}
\end{table}
\end{document}
結果は次のようになります:
siunitx
以下は、およびを含む例ですbooktabs
(読みやすくするために、ヘッダーに % 記号も入れています)。
\documentclass{article}
\usepackage{booktabs}
\usepackage{multirow}
\usepackage{siunitx}
\begin{document}
\begin{table}
\begin{tabular}{lSSSSSS}
\toprule
\multirow{2}{*}{Dataset} &
\multicolumn{2}{c}{A (\%)} &
\multicolumn{2}{c}{B (\%)} &
\multicolumn{2}{c}{C (\%)} \\
& {O.B.R} & {A.R} & {O.B.R} & {A.R} & {O.B.R} & {A.R} \\
\midrule
D1 & 2.1 & 2.1 & 2.1 & 2.1 & 2.1 & 2.1 \\
D2 & 11.6 & 11.6 & 11.6 & 11.6 & 11.6 & 11.6 \\
D3 & 5.5 & 5.5 & 5.5 & 5.5 & 5.5 & 5.5 \\
\bottomrule
\end{tabular}
\end{table}
\end{document}
これは次のようにコンパイルされます
答え2
\begin{tabular}{|l|l|l|l|l|l|l|}
\hline
\multicolumn{1}{|c|}{Std} &
\multicolumn{2}{c|}{1.5} &
\multicolumn{2}{c|}{2} &
\multicolumn{2}{c|}{3} \\
\hline
d& Mean & Std & Mean & Std & Mean & Std \\
\hline
D1 & 2.1\% & 2.1\% & 2.1\% & 2.1\% & 2.1\% & 2.1\% \\
\hline
D2 & 11.6\% & 11.6\% & 11.6\% & 11.6\% & 11.6\% & 11.6\% \\
\hline
D3 & 5.5\% & 5.5\% & 5.5\% & 5.5\% & 5.5\% & 5.5\% \\
\hline
\end{tabular}