我有以下用于定义矩阵的 latex 代码。问题是第 5 列中的项与第 4 列和矩阵的右“边缘”重叠。这能轻松解决吗?
\documentclass[12pt]{article}
\usepackage{pgfplots}
\usepackage{amssymb}
\usepackage{undertilde}
\usepackage{amstext}
\usepackage{amsthm}
\usepackage{epsfig}
\usepackage{dsfont} % For using Indicator function
\usepackage{graphics}
\usepackage{color}
\usepackage{booktabs}
\usepackage{graphicx}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{float}
\usepackage{lscape}
\usepackage[sort&compress,round,comma,authoryear]{natbib}%bibtex
\usepackage{mathtools}
\usepackage{epstopdf}
\usepackage[titletoc,title]{appendix}% for appendix met A
\usepackage{bm}
\usepackage{cleveref}
\usepackage{dcolumn}
\usepackage{enumitem} % For labeling enumeration
\newcommand{\sunderb}[2]{
\mathclap{\underbrace{\makebox[#1]{0 $\cdots$ 0}}_{#2}}
}
\begin{document}
$$V=
\begin{pmatrix}
B_{21}(0)& B_{22}(0) & B_{23}(0)& 0 & \sunderb{3.5em}{12} \\
\sunderb{3.5em}{4} & B_{21}(0)& B_{22}(0) & B_{23}(0) & \sunderb{3.5em}{9} \\
\sunderb{3.5em}{8} & B_{21}(0)& B_{22}(0) & B_{23}(0) & \sunderb{3.5em}{5} \\
\sunderb{3.5em}{12} & B_{21}(0)& B_{22}(0) & B_{23}(0) & 0
\end{pmatrix}
}\in \R^{4 \times 16}.$$
\end{document}
答案1
在猜测了 的定义\R
并删除了多余的括号后,我\sunderb
通过添加外部 修改了宏\makebox[#1]
。如果没有它,您将依靠列中其他项目的自然宽度来补偿\mathclap
。当列(例如矩阵的最后一列)没有其他宽度时,它会引起重叠。
\documentclass[12pt]{article}
\usepackage{pgfplots}
\usepackage{amssymb}
\usepackage{undertilde}
\usepackage{amstext}
\usepackage{amsthm}
\usepackage{epsfig}
\usepackage{dsfont} % For using Indicator function
\usepackage{graphics}
\usepackage{color}
\usepackage{booktabs}
\usepackage{graphicx}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{float}
\usepackage{lscape}
\usepackage[sort&compress,round,comma,authoryear]{natbib}%bibtex
\usepackage{mathtools}
\usepackage{epstopdf}
\usepackage[titletoc,title]{appendix}% for appendix met A
\usepackage{bm}
\usepackage{cleveref}
\usepackage{dcolumn}
\usepackage{enumitem} % For labeling enumeration
\newcommand\R{\mathbb{R}}
\newcommand{\sunderb}[2]{\makebox[#1]{$\mathclap{\underbrace{\makebox[#1]{0 $\cdots$ 0}}_{#2}}$}%
}
\begin{document}
\[V=
\begin{pmatrix}
B_{21}(0)& B_{22}(0) & B_{23}(0)& 0 & \sunderb{3.5em}{12} \\
\sunderb{3.5em}{4} & B_{21}(0)& B_{22}(0) & B_{23}(0) & \sunderb{3.5em}{9} \\
\sunderb{3.5em}{8} & B_{21}(0)& B_{22}(0) & B_{23}(0) & \sunderb{3.5em}{5} \\
\sunderb{3.5em}{12} & B_{21}(0)& B_{22}(0) & B_{23}(0) & 0
\end{pmatrix}
\in \R^{4 \times 16}.\]
\end{document}
答案2
\mathclap
我认为在 的定义中不需要\sunderb
。另外,我稍微减少了宽度的值(第一个参数),因为这样看起来更符合我的口味。最后一条评论:无需加载amstext
:mathtools
为您完成。对于graphics
、 加载graphicx
和 最后 的相同评论epsfig
已被弃用,取而代之的是graphicx
。
\documentclass[12pt]{article}
\usepackage{amssymb}
\usepackage{mathtools}
\newcommand{\sunderb}[2]{\underbrace{\makebox[#1]{$0 ⋯ 0$}}_{#2}}
\begin{document}
$$V=
\begin{pmatrix}
B_{21}(0) & B_{22}(0) & B_{23}(0) & 0 & \sunderb{3em}{12} \\
\sunderb{3em}{4} & B_{21}(0) & B_{22}(0) & B_{23}(0) & \sunderb{3em}{9} \\
\sunderb{3em}{8} & B_{21}(0) & B_{22}(0) & B_{23}(0) & \sunderb{3em}{5} \\
\sunderb{3em}{12} & B_{21}(0) & B_{22}(0) & B_{23}(0) & 0
\end{pmatrix}
∈ \mathbb R^{4 × 16}.$$
\end{document}