如何在 Latex 中表示这些形式的数据?

如何在 Latex 中表示这些形式的数据?

首先,对于带有“进程 ID”的那个,我认为这可以用表来完成,但不知道如何完成。

在第二个中,我想到了equation这一点,但无法弄清楚如何将数据放置在矩阵之外,而且矩阵左侧也没有方程的表示

答案1

我认为第一个表格有两个主要挑战:

  • 如何使其适合文本块?基本tabular环境不能保证这个 17 列表格确实适合。

  • 如何排版标题行(“进程 ID...”)?

为了应对这些挑战,我建议您使用 (a)tabular*宽度设置为的环境\textwidth和 (b)\multicolumn指令,如下面的代码所示。顺便说一句,我会右对齐数字,而不是左对齐。

第三个挑战可能是如何用浅灰色背景呈现整个表格材料。在下面的代码中,我使用了这个答案应对这一挑战。

关于第二张表,我认为将数字材料设置为用花括号括起来的(数学)矩阵是不对的。更重要的是将标题单元格与其对应的列对齐。另外,我还想说,为了便于阅读,将数字与各自的小数点对齐也很重要。因此,我将使用环境tabular以及包S的列类型siunitx来表示四个“真实”数据列。

在此处输入图片描述

\documentclass{article}
\usepackage{booktabs,siunitx,xcolor}
\definecolor{lightgray}{gray}{0.85} % define a suitable version of "light gray"
\newcommand\mytab[1]{\smash{%
   \begin{tabular}[t]{@{}c@{}}#1\end{tabular}}}

\begin{document}

\noindent
\begingroup % localize scope of next two instructions
\setlength\tabcolsep{0pt} % make LaTeX figure out inter-column whitespace
\setlength\fboxsep{0pt}   % see https://tex.stackexchange.com/a/63897/5001
\colorbox{lightgray}{%
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} *{17}{r}}
\toprule
\multicolumn{6}{@{}l}{Process ID: 3939}\\[0.5ex]
105 & 104& 104& 106& 105& 104& 104& 106& 105& 104& 104& 106& 5& 4& 5& 5 &0 \\
40 & 41 & \dots \\
3  &  3 & \dots \\
3  & 12 & \dots \\
\bottomrule
\end{tabular*}}
\endgroup

\bigskip

\begin{center}
\begin{tabular}{@{}c *{2}{S[table-format=1.3]} 
    c *{2}{S[table-format=1.3]} @{}}
\toprule
\mytab{Distinct\\System Call} & 
\multicolumn{5}{c}{Trace} \\
\cmidrule(l){2-6}
  & {1}   & {2}   &       & {$m-1$} & {$m$}   \\
\midrule
1  & 0.051  & 0.055  & \dots  & 0.049 & 0.051 \\
2  & 0.122  & 0.125  & \dots  & \\
   &{\vdots}&{\vdots}&{\vdots}& \\
155& 0.101  & 0.1    & \dots  & \\
167& 0.03   & 0.03   & \dots  & 0.02  & 0.03  \\
\bottomrule
\end{tabular}
\end{center}

\end{document}

相关内容