PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tabelle mit Pfeilen?



Plektron
26-09-2012, 11:31
Hallo zusammen!

Mal wieder plagt mich eine Grafik, die ich gerne hätte. Es handelt sich um eine Tabelle, die ich einmal mit Zahlen und einmal mit übergreifenden Linien und Pfeilen bräuchte. Letzteres bekomme ich zwar gut in DIA hin, dafür aber sehr umständlich mit Zahlen. Außerdem müsste ich dann jedes einzelne Bild als jpg einbinden.

Meine Frage: Kann mir jemand sagen, wie ich die Grafiken wie in der folgenden Arbeit hinbekomme? Ich habe ein sehr ähnliches Thema.

http://www.matematik.lu.se/media/thesis/2009/leo-taslaman-MATM01.pdf

Und zwar handelt es sich um:
* die erste Tabelle auf Seite 27
* die Tabellen Alpha und Beta auf Seite 27
* die erste Tabelle auf Seite 33


Falls sich jemand findet, der Lust hat, mir zu helfen, danke ich schon mal im Voraus vielmals für die Zeit und die Mühe!

hakaze
26-09-2012, 15:10
Wie in deinem anderen Thread (http://mrunix.de/forums/showthread.php?t=73961) kann ich dir nur empfehlen, es mit Tikz/pgf zu probieren.

Viele Beispiele gibt es auf texample.net (http://www.texample.net/tikz/examples/). Damit könntest du schon etwas üben und dann deine Fortschritte (oder auch konkrete Probleme) hier posten.

Plektron
26-09-2012, 15:19
Hi hakaze!

Danke für deine Antwort. Deine Antwort in meinem anderen Thread habe ich jetzt erst gesehen - ich sollte wohl besser die eMail-Notifikation einschalten. :)

texampple.net habe ich schon komplett durchgestöbert - bin dabei auch auf die Möglichkeit gestoßen, die du in besagtem, alten Thread vorgeschlagen hast. Ich habe allerdings nach wie vor Probleme mit den einträgeübergreifenden Pfeilen und gebogenen Linien eine Tabelle. :confused:

Mich tiefer in die Grafikerstellung niederzulassen, rechnet sich bei mir nicht, da das jetzt mit eine der letzten Grafiken ist, die ich brauchen werde und mich dann vermutlich nie wieder mit LaTeX befassen werden darf. Vlt. hat jemand schon einmal eine ähnliche Grafik erstellt oder weiß ad hoc wie es funktioniert?

Falls sich keiner findet, muss ich mich wohl tiefer einlesen.

Vielen Dank dir!

hakaze
26-09-2012, 17:11
Da musst du für dich entscheiden, ob sich der Aufwand lohnt bzw. wie dringlich es ist.

Wenn du nur schnell ein paar kleinere Abbildungen brauchst, würde vielleicht auch schon inkscape (http://inkscape.org/) ausreichen. Damit kannst du deine Kreise und Pfeile zusammenklicken, als PDF exportieren und dann direkt über includegraphic einbinden.

Plektron
26-09-2012, 17:22
Das probiere ich gleich mal aus, vielen Dank! :)

Plektron
27-09-2012, 12:03
Ok, mit dem Aufwand hattest du Recht - ich brauche ungefähr 100 Grafiken dieser Art und das wird mit dem Programm wohl eher eine Sisyphos-Arbeit. :eek:

Aber danke schön! :)

Vielleicht hat ja noch jemand eine Idee, der etwas ähnliches schon einmal erstellen musste? :o

esdd
27-09-2012, 13:55
Hallo,

hier ist mal ein Vorschlag für ein paar deiner Tabellen mit tikz:

\documentclass[parskip=half-]{scrartcl}
\usepackage{tikz}
\usetikzlibrary{matrix,calc}

\tikzset{%
mycell/.style={inner sep=0pt,outer sep=0pt,minimum size=1em},
mymatrix/.style={%
matrix of nodes,draw,inner sep=0.15cm,row sep=0.3cm,column sep=0.3cm,%
nodes=mycell,nodes in empty cells},
punkt/.style={fill,circle,minimum size=2pt},
>=latex% andere Pfeilform
}

\newcommand\Rahmen[1]{%
\draw(#1.west)--(#1.east);
\coordinate(h1)at ($(#1-1-2)!0.5!(#1-1-3)$);
\coordinate(h2)at ($(#1-1-4)!0.5!(#1-1-5)$);
\draw(#1.south-|h1)--(#1.north-|h1)(#1.south-|h2)--(#1.north-|h2);}

\newcommand\Punkt{\node[mycell]{\tikz\node[punkt]{};};}

\begin{document}
\begin{tikzpicture}[baseline=(current bounding box.center)]%
\matrix[mymatrix](m){%
1&1&3&4&5&6\\
2&2&4&3&6&5\\
1&2&5&6&3&4\\
1&2&6&5&4&3\\
};
\Rahmen{m}
\end{tikzpicture}

\begin{tikzpicture}[baseline=(current bounding box.center)]%
\matrix[mymatrix](m){%
\Punkt&\Punkt&\Punkt&\Punkt&\Punkt&\Punkt\\
\Punkt&\Punkt&\Punkt&\Punkt&\Punkt&\Punkt\\
\Punkt&\Punkt&\Punkt&\Punkt&\Punkt&\Punkt\\
\Punkt&\Punkt&\Punkt&\Punkt&\Punkt&\Punkt\\
};
\Rahmen{m}
%Pfeile
\begin{scope}[very thick,->]
\draw(m-1-4.center)--(m-1-6.center);
\draw(m-2-3.center)--(m-4-3.center);
\draw(m-2-4.center)--(m-4-6.center);
\draw(m-3-4.center)--(m-4-5.center)--(m-2-6.center);
\draw(m-4-4.center)--(m-2-5.center)--(m-3-6.center);
\end{scope}
\end{tikzpicture}

\begin{tikzpicture}[baseline=(current bounding box.center)]%
\matrix[mymatrix](m){%
\Punkt&\Punkt&\Punkt&\Punkt&\Punkt&\Punkt\\
\Punkt&\Punkt&\Punkt&\Punkt&\Punkt&\Punkt\\
\Punkt&\Punkt&\Punkt&\Punkt&\Punkt&\Punkt\\
\Punkt&\Punkt&\Punkt&\Punkt&\Punkt&\Punkt\\
};
\Rahmen{m}
%Verbindungen
\foreach \i in {1,...,4}{%
\draw[very thick,rounded corners=2pt]%
(m-\i-3.center)--([yshift=-1.5mm]m-\i-3.center)%
--([yshift=-1.5mm]m-\i-5.center)--(m-\i-5.center);
\draw[very thick,rounded corners=2pt]%
(m-\i-4.center)--([yshift=1.5mm]m-\i-4.center)%
--([yshift=1.5mm]m-\i-6.center)--(m-\i-6.center);}
\end{tikzpicture}%

\end{document}
Gruß
Elke

Plektron
27-09-2012, 14:24
Hallo Elke!

Wow - vielen lieben Dank, das ist exakt das, was ich gesucht habe.
Nochmal ein großes Dankeschön! :)

Plektron
14-11-2012, 08:41
Hallo nochmal! :)

Mir wurde ja schon super geholfen mit obiger Tabelle, danke nochmal dafür!

Weiß vlt. noch jemand, wie ich die Matrixdefinition modifizieren kann, damit ich eine konstante Größe erreiche? Ich schreibe in jedes Feld nur ein oder garkein Zeichen. Aber abhängig davon, welche Felder belegt sind, variiert die Matrixgröße, was in der Arbeit ein unsauberes Bild ergibt. Weiß jemand, wie ich das beheben kann?

Danke sehr!

hakaze
14-11-2012, 08:51
Schau mal in diesen Thread, da wurde quasi das gleiche Problem durchexerziert: Tabelle mit Pfeilen (http://www.mrunix.de/forums/showthread.php?t=74126) (insbesondere Post 11 und folgende)

Ansonsten kannst du noch etwas Feintuning mit der Einstellung für col sep und row sep (für die Matrix) und minimum size (für die einzelnen Nodes) betrieben.

Außerdem noch der obligatorische Hinweis auf die pgf/TikZ-Doku Kapitel 17 Matrices and Alignment (S. 202 und folgende) ;)

Plektron
15-11-2012, 09:42
Wieder mal ein dickes Danke, hakaze! :o)