具有部分垂直线的块矩阵

具有部分垂直线的块矩阵

我想创建一个部分块矩阵,其中底行有两个块,它们之间由一条垂直线分隔,并且由一条水平线与矩阵的其余部分分隔。

我第一次尝试抓住了这个想法,但缺乏对齐

\documentclass{article}

\usepackage{amsmath}

\newcommand{\bigzero}{\mbox{\normalfont\Large\bfseries 0}}
\newcommand{\bigid}{\mbox{\normalfont\Large\bfseries I}}

\begin{document}
  \begin{equation*}
    \begin{pmatrix}
      \begin{matrix}
        1 & x_0 & x_0^2  & \dots & x_0^n \\
          &     & \vdots &       & \\
        1 & x_m & x_m^2  & \dots & x_m^n \\
      \end{matrix} \\
      \hline
      \begin{array}{c c | c c c}
        \bigzero & & & \bigid_{n-m} &
      \end{array}
    \end{pmatrix}
  \end{equation*}
\end{document}

原始矩阵

理想情况下,我希望水平线和行之间的空间更大一些。此外,应该0位于前两列之间,而应该I位于后三列之间。

我能够使用nicematrix包获得更好的间距,但我不知道如何制作垂直线,应与水平线相连,但不要扩展到前三行。

\documentclass{article}

\usepackage{amsmath}
\usepackage{nicematrix}

\newcommand{\bigzero}{\mbox{\normalfont\Large\bfseries 0}}
\newcommand{\bigid}{\mbox{\normalfont\Large\bfseries I}}

\begin{document}
  \begin{equation*}
    \begin{pNiceArray}{CCCCC}
      1 & x_0 & x_0^2  & \cdots & x_0^n \\
        &     & \Vdots &       & \\
      1 & x_m & x_m^2  & \cdots & x_m^n \\
      \hline
      \Block{2-2}{\bigzero} & & \Block{2-3}{\bigid_{n-m}} &  \\
      & & & &
    \end{pNiceArray}
  \end{equation*}
\end{document}

在此处输入图片描述

答案1

你可以用 TikZ 指令绘制你想要的规则:

\documentclass{article}

\usepackage{nicematrix}
\usepackage{tikz}

\newcommand{\bigzero}{\mbox{\normalfont\Large\bfseries 0}}
\newcommand{\bigid}{\mbox{\normalfont\Large\bfseries I}}

\begin{document}
  \begin{equation*}
    \begin{pNiceMatrix}
      1 & x_0 & x_0^2  & \Cdots & x_0^n \\
        &     & \Vdots &       & \\
      1 & x_m & x_m^2  & \Cdots & x_m^n \\
      \hline
      \Block{2-2}{\bigzero} & & \Block{2-3}{\bigid_{n-m}} &  \\
      & & & &
      \CodeAfter
      \tikz \draw (4-|3) -- (6-|3) ;
    \end{pNiceMatrix}
  \end{equation*}
\end{document}

第一个代码的结果


使用最新版本的nicematrix,您只需使用borders命令键即可\Block

\documentclass{article}
\usepackage{nicematrix}

\newcommand{\bigzero}{\mbox{\normalfont\Large\bfseries 0}}
\newcommand{\bigid}{\mbox{\normalfont\Large\bfseries I}}

\begin{document}
  \begin{equation*}
    \begin{pNiceArray}{ccccc}
      1 & x_0 & x_0^2  & \cdots & x_0^n \\
        &     & \Vdots &       & \\
      1 & x_m & x_m^2  & \cdots & x_m^n \\
      \Hline
      \Block[borders=right]{2-2}{\bigzero} & & \Block{2-3}{\bigid_{n-m}} &  \\
      & & & &
    \end{pNiceArray}
  \end{equation*}
\end{document}

第二段代码的输出

答案2

您还可以使用两个指令\multicolumn

\documentclass{article}

\usepackage{amsmath}
\usepackage{nicematrix}

\newcommand{\bigzero}{\mbox{\normalfont\Large\bfseries 0}}
\newcommand{\bigid}{\mbox{\normalfont\Large\bfseries I}}

\begin{document}
  \begin{equation*}
    \begin{pNiceMatrix}
      1 & x_0 & x_0^2  & \Cdots & x_0^n \\
        &     & \Vdots &       & \\
      1 & x_m & x_m^2  & \Cdots & x_m^n \\
      \hline
      \Block{2-2}{\bigzero} & \multicolumn{1}{C|}{} & \Block{2-3}{\bigid_{n-m}} &  \\
      & \multicolumn{1}{C|}{} & & &
    \end{pNiceMatrix}
  \end{equation*}
\end{document}

上述代码的结果

相关内容