Latex - foreach und tikz < LaTeX < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) reagiert/warte auf Reaktion | Datum: | 22:22 Mi 05.11.2008 | Autor: | XHelp |
Hallo!
Ich bastle gerade an einer Präsentation mit Latex-Beamer.
Ich erstelle mit tikz mit Hilfe von foreach einen Graphen:
mit node zeichne ich die Knoten und mit draw die Kanten.
(wollte den Quelltext reinschreiben, allerdings kam ich mit der formatierung nicht klar. Der Quelltext wurde ziemlich entstellt)
Nun will ich auch mit einem foreach die Knotenbezeichnung und die Wertigkeit der Kanten ändern. Wenn ich ja genau das gleiche nochmal laufen lasse, dann malt tikz ja einfach nur darüber und ändert es nicht.
Hat jemand eine Idee wie ich das bewerkstelligen kann?
Vielen Dank im Voraus!
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Hallo!
Du kannst den Quelltext hier rein schreiben, wenn du ihn in [code][/code] einschließt. Dann wird er auch nicht vom Forum zerrissen.
|
|
|
|
|
Hallo Alex,
entgegen Deiner Aussage oben hast Du die Frage bereits hier gestellt: LaTeX-Community.org. Es ist kein Problem, wenn Du auch in weiteren Foren wie hier fragst, zumal dort noch kein Tipp kam, doch es ist wünschenswert, wenn Du das erwähnst, am besten mit einem Link, damit man über bereits gegebene Antworten im Bilde ist.
Für Helfer: der Code ist hinter dem angegebenem Link zu sehen. Ich schau ihn mir auch noch an, wenn ich etwas mehr Zeit habe. Da es kein compilierbares Minimalbeispiel ist, muss ich das meinerseits aufschieben, bis ich die Zeit habe, den Code selbst zu ergänzen um ihn testen zu können, falls Alex nicht noch ein Minimalbeispiel postet.
Viele Grüße,
Stefan
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 12:21 Do 06.11.2008 | Autor: | XHelp |
Also das Minimalbeispiel sieht folgender maßen aus:
1: |
| 2: | \documentclass{beamer}
| 3: |
| 4: | \usetheme{Darmstadt}
| 5: | \usepackage{ngerman}
| 6: | \usepackage{lmodern}
| 7: | \usepackage[latin1]{inputenc}
| 8: | \usepackage[T1,OT1]{fontenc}
| 9: | \usepackage{tikz}
| 10: | \usetikzlibrary{arrows,shapes}
| 11: |
| 12: | \begin{document}
| 13: |
| 14: | \pgfdeclarelayer{background}
| 15: | \pgfsetlayers{background,main}
| 16: |
| 17: | \begin{frame}
| 18: | \begin{figure}[ht]
| 19: | \centering
| 20: | \begin{tikzpicture}[>=latex',join=bevel]
| 21: |
| 22: | \foreach \pos/\name in {{(0,2)/S2}, {(0,4)/S1}, {(4,3)/A}}
| 23: | \node (\name) at \pos [] {$\name$};
| 24: | \foreach \source/ \dest /\weight in {S1/A/5, S2/A/8}
| 25: | \draw[->] (\source) to node[] {\weight} (\dest);
| 26: |
| 27: | \end{tikzpicture}
| 28: | \end{figure}
| 29: | \end{frame}
| 30: |
| 31: | \end{document}
|
Jetzt will ich im nächsten Schritt die Wertigkeit der S1>A Kante ändern und im weiterem Schritt - der S2>A Kante.
Man kann ja es durch copy&paste machen (quasi wenn ich die Folie kopiere und dann einfach die Werte mit der Hand ändere), aber ich denke, dass man es irgendwie geschickter machen kann.
P.S. Mit der doppeltem Post auf LaTeX-Community tut es mir leid, sollte ich in weiteren Foren etwas reinstellen, werde ich es hier nachtragen.
|
|
|
|
|
Hallo Alex,
man könnte es evtl. mit den Optionen remember picture und overlay lösen. Ein Beispiel, wo damit gearbeitet wird, findest Du hier in der TikZ-Beispiel-Galerie.
Stefan
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 00:56 Sa 08.11.2008 | Autor: | XHelp |
Vielen Dank! Damit sollte es echt gehen.
Sollte ich Erfolg haben, werde ich den Code hier reinstellen.
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 01:22 Mo 10.11.2008 | Autor: | Stefan_K |
Hallo Alex,
nur für den Fall, dass Du es noch nicht gesehen haben solltest, im anderen Forum gab es noch einen Tipp mit einem Hinweis auf ein Beispiel.
Viele Grüße,
Stefan
|
|
|
|