Ich würde gerne eine T-Tabelle mit Hilfe von TikZ umsetzen. Genauer ist das eine Tabelle der Art:alt text

Die Hauptschwierigkeit sind die gekrümmten Pfeile auf der linken und rechten Seite.

gefragt 13 Aug '19, 17:51

runix's gravatar image

runix
1.0k207384
Akzeptiert-Rate: 0%


Update

Mir ist nachwievor nicht klar, was genau das Ziel ist bzw. was alles beachtet oder flexibel sein soll. Wenn einzelne Einträge zu breit für die vorgegebene Mindestbreite der Nodes sein könnten und sich die Tabelle automatisch daran anpassen soll und/oder wenn die Einträge in der obersten Zeile eine unterschiedliche Tiefe haben, könnte man auch Spalten für die beiden Linien innerhalb der Tabelle vorsehen. Für die Ausrichtung wird dabei ein leerer Node in der Zelle eingefügt, in der sich die Linien schneiden.

\documentclass[margin=5mm]{standalone}
\usepackage{mathtools}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}
\begin{tikzpicture}
  \matrix[
    matrix of math nodes,
    nodes={minimum width=5em,inner xsep=.5em},
    row sep=1em,
  ](m){
    X   && \text{Ein deutlich längerer Ausdruck} \\[-.75em]
        &|[minimum width=0pt,inner ysep=0pt]|{}&    \\[-.25em]
    a   && b  \\
    2a  && 2b \\
    \frac{1}{2}a && \frac{1}{2}b\\
  };
  % Tabellenlinien
  \draw
    (m.north-|m-2-2)--(m-2-2|-m.south)
    (m.west|-m-2-2)--(m-2-2-|m.east)
  ;
  \begin{scope}[-latex,bend angle=45,auto]
    % Pfeile links
    \path[bend right,swap]
      (m.west|-m-3-1) edge node{$\cdot 2$} (m.west|-m-4-1)
      (m.west|-m-4-1) edge node{$: 4$} (m.west|-m-5-1)
    ;
    % Pfeile rechts
    \path[bend left]
      (m-3-3-|m.east) edge node{$\cdot 2$} (m-4-3-|m.east)
      (m-4-3-|m.east) edge node{$: 4$} (m-5-3-|m.east)
    ;
  \end{scope}
\end{tikzpicture}
\end{document}

Ergebnis:

alt text


Ursprüngliche Antwort

Mir ist jetzt nicht klar, was der Ausgangspunkt ist bzw. was Du schon versucht hast. Mit einer TikZ Matrix lässt sich die Abbildung einfach nachbauen. Ich gehe mal davon aus, dass die Karos dabei nicht gebraucht werden.

\documentclass[margin=5mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}
\begin{tikzpicture}
  \matrix[
    matrix of math nodes,
    nodes={minimum width=5em},
    row sep=1em
  ](m){
    X & Y \\
    a & b \\
    2a & 2b\\
    \frac{1}{2}a & \frac{1}{2}b\\
  };
  % Tabellenlinien
  \draw
    (m.north)--(m.south)
    ([yshift=-.5em]m-1-1.south west)--([yshift=-.5em]m-1-2.south east)
  ;
  \begin{scope}[-latex,bend angle=45,auto]
    % Pfeile links
    \path[bend right,swap]
      (m-2-1.west) edge node{$\cdot 2$} (m-3-1.west)
      (m-3-1.west) edge node{$: 4$} (m-4-1.west)
    ;
    % Pfeile rechts
    \path[bend left]
      (m-2-2.east) edge node{$\cdot 2$} (m-3-2.east)
      (m-3-2.east) edge node{$: 4$} (m-4-2.east)
    ;
  \end{scope}
\end{tikzpicture}
\end{document}

Ergebnis:

alt text

Permanenter link

beantwortet 13 Aug '19, 21:08

esdd's gravatar image

esdd
17.7k254256
Akzeptiert-Rate: 62%

bearbeitet 14 Aug '19, 13:30

Wenn ich in den Spaltenbezeichnungen einen Ausdruck reinschreibe, der länger als X ist, passt sich die Länge der Zelle nicht dem Inhalt an. Kann man das irgendwie anpassen? Zwar kann man das natürlich manuell einstellen, eine automatisierte Lösung wäre natürlich noch eleganter.

(13 Aug '19, 21:42) runix
1

@runix Ich habe dafür noch eine Alternative eingefügt.

(14 Aug '19, 13:31) esdd
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×728
×21

gestellte Frage: 13 Aug '19, 17:51

Frage wurde gesehen: 4,297 Mal

zuletzt geändert: 14 Aug '19, 13:31