假设我创建了一个矩阵。现在我想标记列和行。但是,我希望矩阵的两边都有标签。
我尝试了以下方法:
\documentclass[a4paper12pt]{article}
\usepackage{geometry}
\usepackage{blkarray}
\usepackage{amsmath}
\usepackage{xcolor}
\usepackage{graphicx}
\begin{document}
\[\mathbf{Pairs} =
\begin{blockarray}{cc}
Transmitter & Receiver \\
\begin{block}{c(cc)c}
TX_1^C & (x,y) & (x,y) & BS \\
TX_2^C & (x,y) & (x,y) & BS \\
&\vdots & \vdots \\
TX_{max}^C & (x,y) & (x,y) & BS \\
\BAhhline{......}
TX_1^D & (x,y) & (x,y) &RX_1^D \\
TX_2^D & (x,y) & (x,y) &RX_2^D \\
&\vdots & \vdots \\
TX_{ax}^D & (x,y) & (x,y) &RX_{max}^D
\end{block}
\end{blockarray}
\]
\end{document}
TeXstudio 返回错误miscplaced \noalign. \end{block}
有人知道为什么吗?
答案1
我认为你的例子包含一些错误:
\\
最后一行末尾缺失\end{block}
你说\blockarray{cc}
但是\begin{block}{c(cc)c}, therefore it should be
\blockarray{cccc}`。
和&
之间仅出现一个,我认为应该是三个,但我不确定您想如何对齐这些词。Transmitter
Receiver
&&&
\documentclass[a4paper12pt]{article}
\usepackage{geometry}
\usepackage{blkarray}
\usepackage{amsmath}
\usepackage{xcolor}
\usepackage{graphicx}
\begin{document}
\[\mathbf{Pairs} =
\begin{blockarray}{cccc}
Transmitter & && Receiver \\
\begin{block}{c(cc)c}
TX_1^C & (x,y) & (x,y) & BS \\
TX_2^C & (x,y) & (x,y) & BS \\
&\vdots & \vdots \\
TX_{max}^C & (x,y) & (x,y) & BS \\
\BAhhline{....}
TX_1^D & (x,y) & (x,y) &RX_1^D \\
TX_2^D & (x,y) & (x,y) &RX_2^D \\
&\vdots & \vdots \\
TX_{ax}^D & (x,y) & (x,y) &RX_{max}^D \\
\end{block}
\end{blockarray}
\]
\end{document}
答案2
您可以使用 来做到这一点nicematrix
。
\documentclass[a4paper,12pt]{article}
\usepackage{geometry}
\usepackage{amsmath}
\usepackage{nicematrix}
\begin{document}
\[\mathbf{Pairs} =
\begin{NiceMatrix}[baseline=line-6,cell-space-limits=3pt]
\text{\emph{Transmitter}} & && \text{\emph{Receiver}} \\
TX_1^C & (x,y) & (x,y) & BS \\
TX_2^C & (x,y) & (x,y) & BS \\
&\Vdots & \Vdots \\
TX_{\text{max}}^C & (x,y) & (x,y) & BS \\
\hdottedline
TX_1^D & (x,y) & (x,y) &RX_1^D \\
TX_2^D & (x,y) & (x,y) &RX_2^D \\
&\Vdots & \Vdots \\
TX_{\text{max}}^D & (x,y) & (x,y) &RX_{\text{max}}^D \\
\CodeAfter
\SubMatrix({2-2}{\arabic{iRow}-3})
\end{NiceMatrix}
\]
\end{document}
您需要多次编译(因为nicematrix
在后台使用 PGF/Tikz 节点)。