Wie kann ich meine Tikz-Matrix mehr wie ein Array aussehen lassen?

Wie kann ich meine Tikz-Matrix mehr wie ein Array aussehen lassen?

Betrachten Sie die folgenden beiden Matrizen:

Bildbeschreibung hier eingeben

Die Matrix links wird mit dem Code gerendert

\left[
  \begin{array}{rrrr}
    1  & -32  & 0  & 15 \\
    16 & -138 & -3 & 5  \\
    4  & 14   & 11 & 19
  \end{array}
\right]

Die linke Seite ist gegeben durch:

\begin{tikzpicture}
  \matrix[
  , matrix of math nodes
  , left delimiter = {[}
  , right delimiter = {]}
  ] (m)
  {
    1  & -32  & 0  & 15 \\
    16 & -138 & -3 & 5  \\
    4  & 14   & 11 & 19 \\
  };
\end{tikzpicture}

Ich möchte, dass das rechte Bild genauso aussieht wie das linke. Einige offensichtliche Unterschiede sind:

  1. Die Spalten der Matrix auf der linken Seite sind rechtsbündig.
  2. Die Leerzeichen sind in den beiden Matrizen unterschiedlich verteilt.

Was kann ich tun, damit die Matrix auf der rechten Seite mehr wie die Matrix auf der linken Seite aussieht?

Antwort1

Du kannstverwenden eqparbox, um die Knoten gleich breit zu machen, und den Inhalt beispielsweise richtig ausrichten. Der Rest kann durch Ändern einiger Schlüssel erledigt werden. Wenn Sie dies noch nicht getan haben, sehen Sie sich das nicematrixPaket an, das eine Reihe netter und gut dokumentierter Optionen bietet.

\documentclass[11pt]{article}
\usepackage{tikz}
\usetikzlibrary{matrix}
\usepackage{eqparbox}
\newbox\eqnodebox
\tikzset{r/.style={execute at begin
    node={\setbox\eqnodebox=\hbox\bgroup$},
    execute at end node={$\egroup\eqmakebox[#1-\tikzmatrixname-\the\pgfmatrixcurrentcolumn][r]{\copy\eqnodebox}}},
    r/.default=R}
\begin{document}
\begin{tikzpicture}
  \matrix[matrix of nodes,cells={nodes={r,inner sep=2pt}},
  inner xsep=0pt,inner ysep=1pt,%<- controls the distance and height of the delimiters
  column sep=1.5pt,
  left delimiter = {[},right delimiter = {]}] (m)
  {
    1  & -32  & 0  & 15 \\
    16 & -138 & -3 & 5  \\
    4  & 14   & 11 & 19 \\
  };
\end{tikzpicture}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen