如何对齐\angle
每个单元格,\angle
单独的内联数学模式在哪里?或者其他解决方案?
\begin{tabular}{|c|c|}
\hline
Frequency & $ C_{12} $ $ (\mathrm{dB \ \angle \ deg}) $\\ \hline
4.2 GHz & $ -15.64 \ \angle \ 38.26 $ \\ \hline
4.6 GHz & $ -15.51 \ \angle \ -33.69 $ \\ \hline
5.0 GHz & $ -17.70 \ \angle \ -93.28 $ \\ \hline
5.4 GHz & $ -18.80 \ \angle \ -144.83 $ \\ \hline
\end{tabular}
答案1
也许你还想对齐数字?以下是一些选项:
\documentclass{article}
\usepackage{array,eqparbox,collcell}
\newcommand{\setcolentryA}[1]{\eqmakebox[tabcol-\thetable][l]{#1}}
\def\splitanglerange$#1\angle#2${%
\eqmakebox[tabcol-l-\thetable][r]{$#1$}%
$\angle$%
\eqmakebox[tabcol-r-\thetable][r]{$#2$}%
}
\newcommand{\setcolentryB}[1]{%
\expandafter\splitanglerange#1%
}
\begin{document}
\begin{tabular}{ c c }
\hline
Frequency & $C_{12}\ (\mathrm{dB \ \angle \ deg})$ \\
\hline
4.2 GHz & $ -15.64 \ \angle \ 38.26 $ \\
4.6 GHz & $ -15.51 \ \angle \ -33.69 $ \\
5.0 GHz & $ -17.70 \ \angle \ -93.28 $ \\
5.4 GHz & $ -18.80 \ \angle \ -144.83 $ \\
\hline
\end{tabular}
\bigskip
\begin{tabular}{ c<{\ GHz} r @{\ $\angle$\ } r }
\hline
\multicolumn{1}{c}{Frequency} & \multicolumn{2}{c}{$C_{12}\ (\mathrm{dB \ \angle \ deg})$} \\
\hline
4.2 & $-15.64$ & $38.26$ \\
4.6 & $-15.51$ & $-33.69$ \\
5.0 & $-17.70$ & $-93.28$ \\
5.4 & $-18.80$ & $-144.83$ \\
\hline
\end{tabular}
\bigskip
\begin{tabular}{ c<{\ GHz} >{\collectcell\setcolentryA}c<{\endcollectcell} }
\hline
\multicolumn{1}{c}{Frequency} & \multicolumn{1}{c}{$C_{12}\ (\mathrm{dB \ \angle \ deg})$} \\
\hline
4.2 & $-15.64 \ \angle \ 38.26$ \\
4.6 & $-15.51 \ \angle \ {-}33.69$ \\
5.0 & $-17.70 \ \angle \ {-}93.28$ \\
5.4 & $-18.80 \ \angle \ {-}144.83$ \\
\hline
\end{tabular}
\bigskip
\begin{tabular}{ c<{\ GHz} >{\collectcell\setcolentryB}c<{\endcollectcell} }
\hline
\multicolumn{1}{c}{Frequency} & \multicolumn{1}{c}{$C_{12}\ (\mathrm{dB \ \angle \ deg})$} \\
\hline
4.2 & $-15.64 \ \angle \ 38.26$ \\
4.6 & $-15.51 \ \angle \ -33.69$ \\
5.0 & $-17.70 \ \angle \ -93.28$ \\
5.4 & $-18.80 \ \angle \ -144.83$ \\
\hline
\end{tabular}
\end{document}
第一个表代表原始设置。
第二个表格引入了“角度列”的两列布局。如果您希望右侧“角度列”与 相对\angle
,请l
在列规范中使用 而不是r
。
第三个表使用collcell
收集列条目并将它们插入到一个盒子中,该盒子的尺寸为eqparbox
的\eqmakebox[<tag>]
。所有使用相同的框<tag>
都设置为相同的宽度。<tag>
这里是随着每个table
环境而变化的,因此应该是每个环境唯一的table
(不是tabular
)。
第四个表格在第三个表格的基础上恢复为原来的两列tabular
。宏提取列的内容\angle
,分离出下限和上限,然后将每个限制设置在各自的\eqmakebox[<l-tag>]
框中\eqmakebox[<r-tag>]
,从而确保水平对齐。
请注意,eqparbox
使用该.aux
文件来存储盒子内容,因此第一次(或随后对盒子内容进行任何更改)需要至少进行两次编译。
答案2
您应该删除冗余信息:如果第一列中的所有条目都是以 GHz 为单位的测量值,则单位应该位于标题中。
\angle
在这里我展示了如何通过三种方式获取表格;您可能会喜欢最后一种,其中通过使其像这样工作来在输入中屏蔽额外的列&
。
\documentclass{article}
\usepackage{booktabs} % for the better table
\usepackage{siunitx}
\begin{document}
\section{An ugly ruled table}
\begin{tabular}{
|S[table-format=1.1]
|S[table-format=-2.2]
@{ $\angle$ }
S[table-format=-3.2]|
}
\hline
{Frequency} & \multicolumn{2}{c|}{$C_{12}$} \\
{(\si{\GHz})} & \multicolumn{2}{c|}{(\si{\dB} $\angle$ \si{deg})} \\
\hline
4.2 & -15.64 & 38.26 \\ \hline
4.6 & -15.51 & -33.69 \\ \hline
5.0 & -17.70 & -93.28 \\ \hline
5.4 & -18.80 & -144.83 \\ \hline
\end{tabular}
\bigskip
\section{A better table}
\begin{tabular}{
S[table-format=1.1]
S[table-format=-2.2]
@{ $\angle$ }
S[table-format=-3.2]
}
\toprule
{Frequency} & \multicolumn{2}{c}{$C_{12}$} \\
{(\si{\GHz})} & \multicolumn{2}{c}{(\si{\dB} $\angle$ \si{deg})} \\
\midrule
4.2 & -15.64 & 38.26 \\
4.6 & -15.51 & -33.69 \\
5.0 & -17.70 & -93.28 \\
5.4 & -18.80 & -144.83 \\
\bottomrule
\end{tabular}
\section{Perhaps even better}
\begingroup
\let\mathangle=\angle
\let\angle=&
\begin{tabular}{
S[table-format=1.1]
S[table-format=-2.2]
@{ $\mathangle$ }
S[table-format=-3.2]
}
\toprule
{Frequency} & \multicolumn{2}{c}{$C_{12}$} \\
{(\si{\GHz})} & \multicolumn{2}{c}{(\si{\dB} $\mathangle$ \si{deg})} \\
\midrule
4.2 & -15.64 \angle 38.26 \\
4.6 & -15.51 \angle -33.69 \\
5.0 & -17.70 \angle -93.28 \\
5.4 & -18.80 \angle -144.83 \\
\bottomrule
\end{tabular}
\endgroup
\end{document}
第一个模型可以使用相同的技巧(但这些规则真的很糟糕,相信我)。