Seite 1 von 1
Geschweifte Klammern um Teile einer Matrix setzen
Verfasst: Di 24. Mär 2020, 12:57
von Lorenzo von Mattahorn
Hallo,
Ich habe mir die Frage gestellt, wie ich um eine Matrix geschweifte Klammern setzen kann. Mein Beispiel ist unten angegeben. Ich würde gerne über die Matrix zwei geschweifte Klammern setzen, zum einen über den Teil A ... A und zum anderen über den Teil L ... L.
Ebenso würde ich das ganze gerne rechts neben der Matrix machen, um den Block der M's zu beschriften.
Kann mir da vielleicht jemand weiterhelfen?
$
\left(
\begin{array}{cccccccc}
S & S & A & ... & A & L & ... & L \\
S & A & A & ... & A & L & ... & L \\
S & A & A & ... & A & L & ... & L \\
\vdots & \vdots & \vdots & \ & \vdots & \vdots & & \vdots \\
S & A & A & ... & A & L & ... & L \\
K & K & K & ... & K & M & ... & M \\
\vdots & \vdots & \vdots & \ & \vdots & \vdots & & \vdots \\
K & K & K & ... & K & M & ... & M \\
\end{array}
\right)
$
Verfasst: Di 24. Mär 2020, 18:51
von Bartman
Zumindest die
waagerechten Klammern können auch ohne
pgf/TikZ und dessen Bibliotheken eingefügt werden. Meine Ergänzung Deines unvollständigen Beispiels zeichnet eine der gewünschten Klammern mithilfe der erwähnten Unterstützung:
\documentclass[border=8mm]{standalone}
\usepackage{mathtools}% lädt amsmath
\usepackage{tikz}
\usetikzlibrary{tikzmark,decorations.pathreplacing}
\begin{document}
$
\begin{pmatrix}
S & S & \tikzmarknode{al}{A} & \dots & \tikzmarknode{ar}{A} & L & \dots & L \\
S & A & A & \dots & A & L & \dots & L \\
S & A & A & \dots &/A & L & \dots & L \\
\vdots & \vdots & \vdots & \ & \vdots & \vdots & & \vdots \\
S & A & A & \dots & A & L & \dots & L \\
K & K & K & \dots & K & M & \dots & M \\
\vdots & \vdots & \vdots & \ & \vdots & \vdots & & \vdots \\
K & K & K & \dots & K & M & \dots & M \\
\end{pmatrix}
$
\begin{tikzpicture}[
overlay,
remember picture,
decoration={brace, amplitude=5pt},
% thick
]
\draw [decorate, transform canvas={yshift=2pt}]
(al.north) -- node [above=5pt] {Text} (ar.north)
;
\end{tikzpicture}
\end{document}
Verfasst: Di 24. Mär 2020, 21:00
von Lorenzo von Mattahorn
Vielen Dank für die Antwort!
Bleibt nur die Frage wie das mit den senkrechten geht :)
Zufriedenstellend gelöst
Verfasst: Fr 27. Mär 2020, 12:12
von Lorenzo von Mattahorn
Mit der Hilfe des usepackage blockarray habe ich mir das alles zusammengebastelt.
Danke nochmal für den Tipp mit Tikz.
[code]
\documentclass[11pt, footsepline=false]{scrartcl}
\usepackage{mathtools}% lädt amsmath
\usepackage{tikz}
\usepackage{blkarray}
\usetikzlibrary{tikzmark,decorations.pathreplacing}
\begin{document}
$
\begin{blockarray}{ccccccccc}
\begin{block}{(cccccccc)c}
S & S & \tikzmarknode{xxx}{S} & \dots & \tikzmarknode{xxxx}{S} & \tikzmarknode{yyy}{S} & \dots & \tikzmarknode{yyyy}{S} & \ \\
S & S & S & \dots & S & S & \dots & S & \ \\
S & S & S & \dots & S & S & \dots & S & \tikzmarknode{zzz}{ \ } \\
\vdots & \vdots & \vdots & \ & \vdots & \vdots & & \vdots & \ \\
S & S & S & \dots & S & S & \dots & S & \tikzmarknode{zzzz}{ \ } \\
S & S & S & \dots & S & S & \dots & S & \tikzmarknode{jjj}{ \ } \\
\vdots & \vdots & \vdots & \ & \vdots & \vdots & & \vdots & \ \\
S & S & S & \dots & S & S & \dots & S & \tikzmarknode{jjjj}{ \ } \\
\end{blockarray}
$
\begin{tikzpicture}[
overlay,
remember picture,
decoration={brace, amplitude=5pt},
% thick
]
\draw [decorate, transform canvas={yshift=3pt}]
(xxx.north) -- node [above=5pt] {Text} (xxxx.north)
;
\end{tikzpicture}
\begin{tikzpicture}[
overlay,
remember picture,
decoration={brace, amplitude=5pt},
% thick
]
\draw [decorate, transform canvas={yshift=3pt}]
(yyy.north) -- node [above=5pt] {Text} (yyyy.north)
;
\end{tikzpicture}
\begin{tikzpicture}[
overlay,
remember picture,
decoration={brace, amplitude=5pt},
% thick
]
\draw [decorate, transform canvas={yshift=2pt}]
(zzz.north) -- node [right=5pt] {Text} (zzzz.north)
;
\end{tikzpicture}
\begin{tikzpicture}[
overlay,
remember picture,
decoration={brace, amplitude=5pt},
% thick
]
\draw [decorate, transform canvas={yshift=2pt}]
(jjj.north) -- node [right=5pt] {Text} (jjjj.north)
;
\end{tikzpicture}
\end{document}
[/code]
Sorry, dass das mit Code nicht funktioniert, bin wohl zu dumm dafür.
Verfasst: Fr 27. Mär 2020, 12:31
von Gast
Der Anfangstag wird immer ohne / geschrieben, also [code]Hier steht der Code[/code] und nicht [/code]Hier steht der Code[/code]. Siehe auch:
Wie kann ich Code in meinem Beitrag hervorheben?
Und wenn eine Frage erledigt ist und auch die Antwort genannt wurde, wäre es schön, wenn du auch selbst
den Status passend setzen würdest, was ich hiermit getan habe.
Verfasst: Fr 27. Mär 2020, 16:57
von Bartman
In Deinem Fall wäre die Beschäftigung mit den Tutorien in der Dokumentation von pgf/TikZ sinnvoll. Die Dokumentation von tikzmark kann Dir helfen, zu verstehen, was \tikzmarknode macht.
Du brauchst die Umgebung tikzpicture nur einmal. Wenn man bei einem Knoten eine Himmelsrichtung ansprechen kann, dann wird es wohl auch noch andere geben.