Seite 1 von 1
Element einer Matrix in Equation Umgebung zentrieren
Verfasst: Di 8. Dez 2015, 17:40
von chirs_85
Hallo,
ich würde gerne Elemente einer Matrix innerhalb der Equation Umgebung zentrieren. Die Element sind unterschiedl. lang (etwa "a_b" und "c_{defghi}").
Bisherige versuche mit \centering, \begin{bmatrix}[c] haben nicht funktioniert.
Gibt es Ideen?
Gruß
Re: Element einer Matrix in Equation Umgebung zentrieren
Verfasst: Di 8. Dez 2015, 20:37
von esdd
chirs_85 hat geschrieben:
Gibt es Ideen?
Ja, mach ein
Minimalbeispiel und zeig uns, was Du tust, damit die beiden Elemente nicht zentriert übereinander stehen:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
\begin{bmatrix}
a_b\\
c_{defgh}
\end{bmatrix}
\end{equation}
\end{document}
Verfasst: Mi 9. Dez 2015, 09:18
von chirs_85
Besten Dank fürs Feedback. Anbei ein Minimalbeispiel
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
\begin{bmatrix}
a^b\\
c^{defghij}
\end{bmatrix}
\end{equation}
\end{document}
Ich hätte gerne, das "a" und "c" untereinander stehen. Das Problem scheint das supersript zu sein
Verfasst: Mi 9. Dez 2015, 10:07
von Noch so einer
Man könnte natürlich statt einer bmatrix- einfach eine array-Umgebung mit l-Spalten verwenden. Man kann aber auch bmatrix um ein optionales Argument erweitern, so dass man den Spaltentype frei wählen kann:
\documentclass{article}
\usepackage{mathtools}
\makeatletter
% Das internet \env@matrix von amsmath bekommt als optinalen Parameter den Spaltentyp mit dem Default c
\def\env@matrix{%
\kernel@ifnextchar [%]
{\env@@matrix}%
{\env@@matrix[c]}%
}
\def\env@@matrix[#1]{\hskip -\arraycolsep
\let\@ifnextchar\new@ifnextchar
\array{*\c@MaxMatrixCols #1}}
% Die Umgebung bmatrix wird so umdefiniert, dass sie ebenfalls ein optionales Argument erhält, das sie an \env@matrix weiterreicht
\renewenvironment{bmatrix}[1][l]{\left[\env@matrix[#1]}{\endmatrix\right]}
\makeatother
\begin{document}
\begin{equation}
\begin{bmatrix}[l]
a^b\\
c^{defghij}
\end{bmatrix}
\end{equation}
\end{document}
Hat man allerdings unterschiedliche Spalten, dass ist das nicht mehr sonderlich sinnvoll. Dann sollte man darüber nachdenken, wirklich mit einer array-Umgebung zu arbeiten.
Verfasst: Mi 9. Dez 2015, 10:15
von esdd
Das Paket
mathtools definiert für solche Zwecke Sternvarianten der Matrixumgebungen:
\documentclass{article}
\usepackage{mathtools}% lädt auch amsmath
\begin{document}
\begin{equation}
\begin{bmatrix*}[l]
a^b\\
c^{defghij}
\end{bmatrix*}
\end{equation}
\end{document}
Wie in dem Vorschlag von Besserwisser werden dann aber *alle* Spalten der Matrix linksbündig ausgerichtet.
Verfasst: Mi 9. Dez 2015, 10:35
von chirs_85
esdd hat geschrieben:Das Paket
mathtools definiert für solche Zwecke Sternvarianten der Matrixumgebungen:
\documentclass{article}
\usepackage{mathtools}% lädt auch amsmath
\begin{document}
\begin{equation}
\begin{bmatrix*}[l]
a^b\\
c^{defghij}
\end{bmatrix*}
\end{equation}
\end{document}
Wie in dem Vorschlag von Besserwisser werden dann aber *alle* Spalten der Matrix linksbündig ausgerichtet.
So sieht es ganz gut aus. Danke
