Hallo,
ich versuche eine beschriftete Matrix zu erstellen (Bezeichnungen für Zeile und Spalte). Das ganze funktioniert auch mit Beispielcode: Open in Online-Editor
\documentclass[]{article} \usepackage{amsmath} \begin{document} $ \bordermatrix{ & 1 & 2 & 3 & 4 \cr A & a_1 & a_2 & a_3 & a_4 \cr B & b_1 & b_2 & b_3 & b_4 \cr C & c_1 & c_2 & c_3 & c_4 \cr D & d_1 & d_2 & d_3 & d_4 \cr } $ \end{document} Mit begin{bmatrix}... kann ich keine Beschriftungen vornehmen (oder?). Gibt es dafür einen einfachen Weg, Befehl o.ä.? Im, Prinzip habe ich eine Lösung hier gefunden: http://tex.stackexchange.com/questions/55054/bordermatrix-with-brackets-instead-of-parentheses Das erscheint mir aber recht umständlich. Deshalb wollte ich wissen ob es eine einfachere, anschaulichere Möglichkeit gibt. Danke vorab gefragt 20 Jul '16, 10:56 DerMetzger saputello |
Open in Online-Editor
\usepackage{etoolbox} \let\bbordermatrix\bordermatrix \patchcmd{\bbordermatrix}{8.75}{4.75}{}{} \patchcmd{\bbordermatrix}{\left(}{\left[}{}{} \patchcmd{\bbordermatrix}{\right)}{\right]}{}{} Liefert bis jetzt das beste und übersichtlichste Ergebnis, das ich gefunden habe (Seite oben). Gibt es einen amsmath Befehl, den ich anwenden kann, ohne bordermatrix so abzuändern? beantwortet 20 Jul '16, 11:03 DerMetzger |
Man kann sich das mit Open in Online-Editor
\documentclass{article} \usepackage{amsmath} \begin{document} \[ \begin{bmatrix} & \parbox[b][0pt][b]{.5em}{\raisebox{3ex}{1}} & \parbox[b][0pt][b]{.5em}{\raisebox{3ex}{2}} & \parbox[b][0pt][b]{.5em}{\raisebox{3ex}{3}} & \parbox[b][0pt][b]{.5em}{\raisebox{3ex}{4}} \\[-3ex] \makebox[0pt][r]{$A$\hspace{1.5em}} & a_1 & a_2 & a_3 & a_4 \\ \makebox[0pt][r]{$B$\hspace{1.5em}} & b_1 & b_2 & b_3 & b_4 \\ \makebox[0pt][r]{$C$\hspace{1.5em}} & c_1 & c_2 & c_3 & c_4 \\ \makebox[0pt][r]{$D$\hspace{1.5em}} & d_1 & d_2 & d_3 & d_4 & \\ \end{bmatrix} \] \end{document} Empfehlen würde ich das aber nicht. Die Lösung von cmhuges auf StackExchange, die wohl ursprünglich aus Herbert Voß' Mathmode stammt, ist da wesentlich schöner. beantwortet 20 Jul '16, 11:37 saputello |
Alternativ kann man das Open in Online-Editor
\documentclass{article} \usepackage{blkarray} \begin{document} $ \begin{blockarray}{ccccc} & 1 & 2 & 3 & 4 \\ \begin{block}{c[cccc]} A & a_1 & a_2 & a_3 & a_4 \\ B & b_1 & b_2 & b_3 & b_4 \\ C & c_1 & c_2 & c_3 & c_4 \\ D & d_1 & d_2 & d_3 & d_4 \\ \end{block} \end{blockarray} $ \end{document} beantwortet 20 Jul '16, 12:24 Henri |
Hier noch was mit TikZ. Finde ich persönlich aber nicht so schön. Open in Online-Editor
\documentclass{article} \usepackage{tikz} \usetikzlibrary{matrix} \begin{document} \begin{tikzpicture} \matrix [ matrix of math nodes, left delimiter={[}, right delimiter={]}, ] (m) { a_1 & a_2 & a_3 & a_4 \\ b_1 & b_2 & b_3 & b_4 \\ c_1 & c_2 & c_3 & c_4 \\ d_1 & d_2 & d_3 & d_4 \\ }; \foreach \i/\j in {1/A, 2/B, 3/C, 4/D} { \node[above=2ex] at (m-1-\i) {$\i$}; \node[left=2em] at (m-\i-1) {$\j$}; } \end{tikzpicture} \end{document} beantwortet 20 Jul '16, 13:16 Henri |
Mit Open in Online-Editor
\documentclass{article} \usepackage{kbordermatrix} \begin{document} \kbordermatrix{ & 1 & 2 & 3 & 4 \\ A & a_1 & a_2 & a_3 & a_4 \\ B & b_1 & b_2 & b_3 & b_4 \\ C & c_1 & c_2 & c_3 & c_4 \\ D & d_1 & d_2 & d_3 & d_4 } \end{document} beantwortet 07 Aug '16, 11:44 crazyhorse |
Meinst Du mit Beschriftung, dass Du Zeilen oder Spalten außerhalb der Matrix mit Namen o. ä. versehen willst?
Genau das meine ich (so wie bei bordermatrix im obigen Beispiel). Hier sind A, B, C, D dei "Bezeichnungen" für die Zeilen, bzw. 1, 2, 3, 4 für die Spalten.
Könnte man mit
tikz
machen. Ist aber auch nicht ohne Aufwand.Ja habe ich mir auch überlegt. Ich habe auch schon eine Lösung geunden ohne tikz (s. unten). Wollte nur wissen ob es nicht eben auch einen einfachen Befhel wie bordermatrix gibt. Der Punkt ist, dass ich ein hundert Seiten langes Dokument habe, wo nur eine solche Matrix vorkommt.