Ich verwende generierte dot-Dateien, die ich mit LaTeX weiter verarbeiten möchte. Die Dateien verwenden das style-Attribute von dot, wie im folgenden Beispiel: Öffne in Overleaf
\documentclass{article} \usepackage{tikz} \usetikzlibrary{shapes,arrows} \usepackage[shell,outputdir={diagrams/},tikz]{dot2texi} \usepackage{graphicx} \begin{document} \begin{dot2tex}[dot] digraph G { node [shape="box",style="rounded"]; a_1 -> a_2 -> a_3 -> a_4 -> a_1; } \end{dot2tex} \end{document} Ich erhalte dann folgende Fehlermeldung: Öffne in Overleaf
! Package pgfkeys Error: I do not know the key '/tikz/rounded' and I am going t o ignore it. Perhaps you misspelled it. See the pgfkeys package documentation for explanation. Type H <return> for immediate help. ... l.4 ...at (54.0bp,18.0bp) [draw,rectangle,rounded] {a\_4}; ? Was ist die Ursache? Muss ich noch weitere tikz-Bibliotheken einbinden? Vielen Dank im Voraus
Dieser Frage ist "Community Wiki" markiert.
|
Das Problem ist schlicht, dass es keine Öffne in Overleaf
\documentclass{article} \usepackage{tikz} \usetikzlibrary{shapes,arrows} \usepackage[shell,tikz]{dot2texi} \usepackage{graphicx} \begin{document} \begin{dot2tex}[dot] digraph G { node [shape="box",style="rounded corners"]; a_1 -> a_2 -> a_3 -> a_4 -> a_1; } \end{dot2tex} \end{document} Ich vermute stark, dass außerdem Option Öffne in Overleaf
\documentclass{article} \usepackage{tikz} \usetikzlibrary{shapes,arrows} \usepackage[shell,tikz]{dot2texi} \usepackage{graphicx} \begin{document} \begin{dot2tex}[dot,mathmode] digraph G { node [shape="box",style="rounded corners"]; a_1 -> a_2 -> a_3 -> a_4 -> a_1; } \end{dot2tex} \end{document} Wenn Du unbedingt einen Stil Öffne in Overleaf
\documentclass{article} \usepackage{tikz} \usetikzlibrary{shapes,arrows} \usepackage[shell,tikz]{dot2texi} \usepackage{graphicx} \tikzset{rounded/.style={rounded corners}} \begin{document} \begin{dot2tex}[dot,mathmode] digraph G { node [shape="box",style="rounded"]; a_1 -> a_2 -> a_3 -> a_4 -> a_1; } \end{dot2tex} \end{document} Ergebnis ist dabei dasselbe wie zuvor. Dabei kannst Du dann wahlweise auch gleich die Stärke der Rundung ändern, beispielsweise: Öffne in Overleaf
\tikzset{rounded/.style={rounded corners=1pt}} beantwortet 11 Jul '17, 09:44 saputello Ich habe im dot2texi Manual gesehen, dass es dort eine Mischung von dot und tikz Befehlen gibt. Meine dot-Dateien sind aber zum Teil generiert und daher pure dot. Ich müsste sie dann nachbearbeiten, was mir eigentlich nicht taugt.
(11 Jul '17, 11:29)
dordow
@dordow Dann hilft nur mit graphviz als PDF rendern und mit
(11 Jul '17, 11:46)
Henri
@dordow: Wenn die generiert sind, dann fügt man eben in den Generierungsworkflow irgendwo ein
(11 Jul '17, 12:11)
saputello
@dordow: Ich habe im dritten Beispiel mal gezeigt, wie man eine neue Stil-Option definieren kann, so dass es auch mit
(12 Jul '17, 07:52)
saputello
Sehr elegante Lösung! Funktioniert auch mit Kombinationen (style="rounded,filled").
(12 Jul '17, 19:58)
dordow
|
Zwar keine direkte Antwort, aber alternativ kann man den Graph auch mit TikZ Öffne in Overleaf
\documentclass{article} \usepackage{tikz} \usetikzlibrary{graphs,graphdrawing} \usegdlibrary{layered} \begin{document} \begin{tikzpicture} \graph[layered layout,nodes={draw,rounded corners},math nodes] { a_1 -> a_2 -> a_3 -> a_4 -> a_1; }; \end{tikzpicture} \end{document} beantwortet 10 Jul '17, 23:23 Henri Ich habe schon mit tikz gearbeitet, es ergibt die besten Graphiken, sieht man ja auch an diesem Beispiel. Es ist mir aber einfach zu kompliziert. Die graphdrawing Bibliothek kenne ich aber noch nicht, scheint ja so etwas wie dot in tikz zu sein. Werde ich mir anschauen, danke für den Tipp.
(11 Jul '17, 11:35)
dordow
@dordow: Danke geht bei uns übrigens mit Upvote (Klick auf den Daumen hoch). Das kann jeder für beliebig viele Fragen und Antworten, die er gut findet. Wenn eine Antwort diejenige ist, die Deiner Meinung nach Deine Frage beantwortet, gibt es außerdem auch noch den Haken. Auf den kann nur der Fragestelle bei einer einzigen Antwort klicken. Das alles hilft ggf. anderen Fragestellern mit ähnlichen Fragen bei der Orientierung (bewahrt sie aber auch nicht davor ihr Hirn einzuschalten).
(11 Jul '17, 12:29)
saputello
|
Was soll
rounded
sein? Meinst Du vielleichtrounded corners
? Ich kann es leider selbst nicht testen, da ichdot2tex
nicht zum Laufen bekomme.Aus der Doku von
dot2tex
: »Thestyle
attribute is passed to the rendering backend [...]« Das heißt, der Inhalt vonstyle
muss ein TikZ-Style sein, alsorounded corners
statt nurrounded
.