编写表格的更好方法

编写表格的更好方法

我想知道是否有更好的方法来编写这样的表格...有什么建议吗?

谢谢!

 \documentclass[12pt,oneside,a4paper,fleqn]{report}
  \usepackage{float}
 \usepackage{booktabs}
 \usepackage{slashbox}



\begin{document}
\begin{table}[H]
 \centering
 \begin{tabular}{|l|lll|}
 \hline
\backslashbox{$f_i$}{$c_j$} & $c_1$ & $c_2$                              &          $c_3$    \\ \hline
 $f_1$  & 2.79 & 3.96                              & 4.76    \\
$f_2$  & 5.46 & \multicolumn{1}{r}{1.34} & 2.87    \\
 \hline
\end{tabular}
\caption{ costs $b_{ij}$}\label{t4}
\end{table}
\end{document}

答案1

以下代码显示了当前代码与使用生成的代码之间的比较booktabssiunitx

\documentclass[12pt,oneside,a4paper,fleqn]{report}
\usepackage{float}
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage{slashbox}

\begin{document}

\begin{table}[H]
  \centering
  \begin{tabular}{|l|lll|}
  \hline
  \backslashbox{$f_i$}{$c_j$} & $c_1$ & $c_2$                              &          $c_3$    \\ \hline
  $f_1$  & 2.79 & 3.96                              & 4.76    \\
  $f_2$  & 5.46 & \multicolumn{1}{r}{1.34} & 2.87    \\
  \hline
  \end{tabular}
  \caption{costs $b_{ij}$}
  \label{t4}
\end{table}

\begin{table}[H]
  \centering
  \begin{tabular}{>{$}l<{$}S[table-format=1.2]S[table-format=1.2]S[table-format=1.2]}
  \toprule
  & \multicolumn{3}{c}{$c_j$} \\
  \cmidrule(lr){2-4}
  f_i & {$c_1$} & {$c_2$} & {$c_3$}    \\ 
  \cmidrule(lr){1-1}\cmidrule(lr){2-4}
  f_1  & 2.79 & 3.96                              & 4.76    \\
  f_2  & 5.46 & \multicolumn{1}{r}{1.34} & 2.87    \\
  \bottomrule
  \end{tabular}
  \caption{costs $b_{ij}$}
  \label{t4}
\end{table}


\end{document}

结果:

在此处输入图片描述

一些改进

  • 没有垂直规则。

  • 最重要的是:没有对角线规则。

  • 更好的“空气”行。

  • siunitx通过的功能对数值列中的小数点进行对齐。

相关内容