我想创建 3 个直接对齐的线向量。我想标记第一个向量(此处示例为 A、B、C...)但是对齐(和括号的大小)实际上不起作用。有人对此有什么建议吗?
\begin{align}
p_{A} &= \bordermatrix{~ & A & B & C & D & E & F & G & H \cr
~ & 0,01 & 0,49 & 0,02 & 0,00 & 0,01 & 0,26 & 0,1 & 0,11\cr} \\
p_{B} &= \begin{pmatrix}
0,10 & 0,17 & 0,65 & 0,01 & 0,01 & 0,02 & 0,01 & 0,03 \\
\end{pmatrix} \\
\end{align}
如果你能帮我的话就太好了
最好的
答案1
这是一种可能性,使用 TABstacks。
\documentclass{article}
\usepackage{amsmath,tabstackengine}
\setstackTAB{@}
\setstacktabbedgap{1em}% INTERCOLUMN GAP
\stackMath
\begin{document}
\begin{align}
p_{A} =\phantom{(} \tabbedstackon[5pt]% THE 5pt IS THE GAP TO THE OVERSET
{\llap{(}0,01 @ 0,49 @ 0,02 @ 0,00 @ 0,01 @ 0,26 @ 0,10 @ 0,11\rlap{)}}
{A @ B @ C @ D @ E @ F @ G @ H} \\
p_{B} = \phantom{(} \tabbedShortstack{
\llap{(}0,10 @ 0,17 @ 0,65 @ 0,01 @ 0,01 @ 0,02 @ 0,01 @ 0,03\rlap{)}}
\end{align}
\end{document}
答案2
标准array
环境很好,但如果条目是十进制数,最好使用siunitx
。
\documentclass{article}
\usepackage{amsmath,array,siunitx}
\sisetup{output-decimal-marker={,}}
\begin{document}
First the version with the standard \texttt{array}
\begin{equation}
\begin{array}{r @{} *{8}{c} @{} l}
& A & B & C & D & E & F & G & H \\
p_{A} = (& 0,01 & 0,49 & 0,02 & 0,00 & 0,01 & 0,26 & 0,10 & 0,11 &) \\
p_{B} = (& 0,10 & 0,17 & 0,65 & 0,01 & 0,01 & 0,02 & 0,01 & 0,03 &)
\end{array}
\end{equation}
and then the version with \texttt{siunitx}
\begin{equation}
\begin{array}{r @{} *{8}{S[table-format=1.2]} @{} l}
& {A} & {B} & {C} & {D} & {E} & {F} & {G} & {H} \\
p_{A} = (& 0,01 & 0,49 & 0,02 & 0,00 & 0,01 & 0,26 & 0,10 & 0,11 &) \\
p_{B} = (& 0,10 & 0,17 & 0,65 & 0,01 & 0,01 & 0,02 & 0,01 & 0,03 &)
\end{array}
\end{equation}
\end{document}
如果需要对两行进行编号,则可以借助以下命令进行gather
:
\begin{gather}
\nonumber\\
\\
\smash{
\begin{array}[b]{r @{} *{8}{S[table-format=1.2]} @{} l}
& {A} & {B} & {C} & {D} & {E} & {F} & {G} & {H} \\[\jot]
p_{A} = (& 0,01 & 0,49 & 0,02 & 0,00 & 0,01 & 0,26 & 0,10 & 0,11 &) \\[\jot]
p_{B} = (& 0,10 & 0,17 & 0,65 & 0,01 & 0,01 & 0,02 & 0,01 & 0,03 &)
\end{array}
}
\end{gather}