
Ich versuche, eine in Klammern eingeschlossene Matrix zu erstellen, in der die Zeilen und Spalten beschriftet sind. Mein Versuch ist:
\begin{equation}
\begin{aligned}
&\begin{array}{*{7}{p{.8cm}}}
\mathcal{G}^{\{1\}} & \mathcal{G}^{\{2\}} & \mathcal{G}^{\{3\}} & \mathcal{G}^{\{4\}} & \mathcal{G}^{\{5\}} & e_{r1} & e_{r2}\end{array}\\
\begin{array}{r}
\text{plant (out)}\\
n_1\\
n_2\\
\text{plant (in)}\end{array} & \left[\begin{array}{*{7}{p{.8cm}}}
0 & 0 & -1 & -1 & -1 & -1 & 0\\
0 & 0 & -1 & -1 & -1 & -1 & 0\\
0 & 0 & -1 & -1 & -1 & -1 & 0\\
0 & 0 & -1 & -1 & -1 & -1 & 0\end{array}\right]
\end{aligned}
\end{equation}
Wenn ich dies jedoch mache, erhalte ich viele Fehlermeldungen wie „LaTeX-Fehler: \mathcal nur im Mathematikmodus zulässig.“ und „Fehlendes $ eingefügt.“. Ich habe sowohl das Array- als auch das Amsmath-Paket in meine Präambel aufgenommen. Warum funktioniert das nicht und was wäre der beste Weg, dies zu erreichen? Das Hinzufügen von $$ verursacht den Fehler „unerwartetes $ nach \begin{array}“
Antwort1
Der Inhalt einer p
Spalte wird standardmäßig im Textmodus verarbeitet. Da ein automatischer Zeilenumbruch nicht erforderlich zu sein scheint, schlage ich vor, den p
Spaltentyp durch den w
Spaltentyp zu ersetzen, der vom array
Paket bereitgestellt wird und auch einen Längenparameter (die Entwurfsbreite der Spalte) als Argument annimmt.
\documentclass{article}
\usepackage{array} % for 'w' column type
\usepackage{amsmath} % for 'aligned' env.
\newcommand\mG[1]{\mathcal{G}^{\{#1\}}} % handy shortcut macro
\begin{document}
\begin{equation}
\begin{aligned}
&\kern4pt
\begin{array}{ *{6}{wl{8mm}} r }
\mG{1} & \mG{2} & \mG{3} & \mG{4} & \mG{5} & e_{r1} & e_{r2}
\end{array} \\
\begin{array}{r}
\text{plant (out)}\\
n_1\\
n_2\\
\text{plant (in)}
\end{array}
&\left[
\begin{array}{ *{6}{wl{8mm}} r }
0 & 0 & -1 & -1 & -1 & -1 & 0\\
0 & 0 & -1 & -1 & -1 & -1 & 0\\
0 & 0 & -1 & -1 & -1 & -1 & 0\\
0 & 0 & -1 & -1 & -1 & -1 & 0
\end{array}
\right]
\end{aligned}
\end{equation}
\end{document}
Antwort2
Ich schlage vor, zu verwenden nicematrix
.
\documentclass{article}
\usepackage{amsmath} % for 'aligned' env.
\usepackage{nicematrix}
\newcommand\cG[1]{\mathcal{G}}
\begin{document}
\begin{equation}
\begin{bNiceArray}[first-row,first-col]{*{7}{w{c}{2em}}}
& \cG^{\{1\}} & \cG^{\{2\}} & \cG&{\{3\}} & \cG^{\{4\}} & \cG^{\{5\}} & e_{r1} & e_{r2} \\
\text{plant (out)} & 0 & 0 & -1 & -1 & -1 & -1 & 0 \\
n_1 & 0 & 0 & -1 & -1 & -1 & -1 & 0 \\
n_2 & 0 & 0 & -1 & -1 & -1 & -1 & 0 \\
\text{plant (in)} & 0 & 0 & -1 & -1 & -1 & -1 & 0
\end{bNiceArray}
\end{equation}
\end{document}
Mit w{c}{2em}
erhalten Sie Spalten mit fester Breite.