Erstellen einer Geraden in einer Matrix

Erstellen einer Geraden in einer Matrix

Ich muss innerhalb einer Matrix einige gerade Linien hinzufügen, um die Beschriftung der Zeilen anzuzeigen, etwa so:

Bildschirmfoto

Wie mache ich das?

Antwort1

Leaders ist für diese Situation optimal geeignet.amsmathbietet \hdotsfor{<cols>}die Möglichkeit, einen gepunkteten Strich über <cols>die Spalten zu ziehen. Es ist auch möglich, eine Zeilennummer zu überlagern, indem man diese bestimmte Zeile zweimal einstellt (einmal mit \hdotsforund einmal mit einer Zeilennummer, sagen wir). Ich habe auch hinzugefügt, \numberrowwithline{<cols>}{<stuff>}dass eine Linie (anstelle von Punkten) als Strich-Füller gezogen und <stuff>in der Mitte der <cols>Spalten eingefügt wird. Der Standardabstand auf beiden Seiten beträgt \fboxsep.

Das folgende ist ein modifiziertes Beispiel aus Herbertsmathmodedokumentieren:

Bildbeschreibung hier eingeben

\documentclass{article}
\usepackage{xcolor}% http://ctan.org/pkg/xcolor
\usepackage{amsmath}% http://ctan.org/pkg/amsmath

\newcommand{\numberrowwithline}[2]{%
  \multicolumn{#1}c%
    {\xleaders\hbox{-\kern-1pt}\hfill\kern\fboxsep%
        #2\hspace*{\fboxsep}%
        \xleaders\hbox{-\kern-1pt}\hfill\kern0pt%
        }%
}

\begin{document}
\begin{equation}
  \underline{A}=\left[\begin{array}{ccccccc}
    a_{11} & a_{12} & 0 & \ldots & \ldots & \ldots & 0 \\
    a_{21} & a_{22} & a_{23} & 0 & \ldots & \ldots & 0 \\
    0 & a_{32} & a_{33} & a_{34} & 0 & \ldots & 0 \\
    \hdotsfor{7} \\
    \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\
    \hdotsfor{7} \\[-\normalbaselineskip]
        \multicolumn{7}{c}{\colorbox{white}{\ $R_n$\ }} \\
        \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\
        \numberrowwithline{7}{R_i} \\
    0 & \ldots & 0 & a_{n-2,n-3} & a_{n-2,n-2} & a_{n-2,n-1} & 0 \\
    0 & \ldots & \ldots & 0 & q_{n-1,n-2} & a_{n-1,n-1} & a_{n-1,n} \\
    0 & \ldots & \ldots & \ldots & 0 & a_{n,n-1} & a_{nn}
  \end{array}\right]
\end{equation}
\end{document}

Mit der Hinzufügung vonxhfillSie können mit den Farben und Arten von Anführern verrückt spielen. Sehen Sie sich diexhfillDokumentationfür die verschiedenen Linienarten als Beispiel.

Antwort2

  \multicolumn{3}{c}{\hrulefill R_2 \hrulefill}

wenn es sich um ein 3-Spalten-Array handelt

Antwort3

Mit nicematrix.

\documentclass{article}
\usepackage{xcolor}
\usepackage{nicematrix,tikz}


\begin{document}

$\begin{bNiceArray}{cc@{\hspace{7mm}}ccc}
a_{11} &a_{12} & \Cdots[shorten=5pt] & a_{1,n-1} & a_{1n} \\
\Cdots[line-style=solid] && R_2 & \Cdots[line-style=solid] \\
&& \vdots \\
\Cdots[line-style=solid] && R_n & \Cdots[line-style=solid] \\
\end{bNiceArray}$

\end{document}

Ausgabe des obigen Codes

verwandte Informationen