Wenn ich polyglossia mit german als Spracheinstellung und gleichzeitig die Bibliothek quotes verwende, dann erhalte ich eine Fehlermeldung (siehe diese Frage). Deshalb möchte ich bei der Beschriftung von graph Kanten auf die tikzlibrary quotes verzichten. Wie kann ich das hinbekommen?

Open in writeLaTeX
\documentclass[tikz]{standalone}

\usepackage{polyglossia}
%\setdefaultlanguage{german}

\usepackage{tikz}
\usetikzlibrary{quotes, graphs, graphdrawing}

\begin{document}
    \tikz{\graph[level distance=2cm]{{Test1, Test2} ->["x"] Test;};}
\end{document}

gefragt 05 Mär '14, 17:19

Sylvan's gravatar image

Sylvan
38951117
Akzeptiert-Rate: 0%

bearbeitet 15 Mai '14, 20:59

esdd's gravatar image

esdd
17.8k284257


Das ist mit ->[edge node=node[auto]{<text>}] möglich. Aber polyglossia lässt sich auch verwenden, wenn man das Paket nach den TikZ-Bibliotheken quotes und babel lädt.

Open in writeLaTeX
\documentclass[tikz,margin=5mm]{standalone}

\usetikzlibrary{
  graphs, graphdrawing,
  quotes, babel
}

\usepackage{polyglossia}
\setdefaultlanguage[babelshorthands]{german}

\begin{document}
\tikz{
  \graph[branch down=2cm, grow right=2cm]
    {{Test 1, Test 2} ->[edge node={node[auto]{x}}] Test A;};
  \begin{scope}[xshift=4cm]
    \graph[branch down=2cm, grow right=2cm]
      {{Test 3, Test 4} ->["x"] Test B;};
  \end{scope}
}
\end{document}

alt text

Alternativ kann man mit LuaLaTeX auch das Paket babel mit ngerman statt polyglossia verwenden.

Open in writeLaTeX
\documentclass[tikz,margin=5mm]{standalone}

\usetikzlibrary{
  graphs, graphdrawing,
  quotes, babel
}

\usepackage[ngerman]{babel}

\begin{document}
\tikz{
  \graph[branch down=2cm, grow right=2cm]
    {{Test 1, Test 2} ->[edge node={node[auto]{x}}] Test A;};
  \begin{scope}[xshift=4cm]
    \graph[branch down=2cm, grow right=2cm]
      {{Test 3, Test 4} ->["x"] Test B;};
  \end{scope}
}
\end{document}
Permanenter link

beantwortet 06 Mär '14, 11:14

esdd's gravatar image

esdd
17.8k284257
Akzeptiert-Rate: 62%

bearbeitet 12 Jun '14, 20:01

1

Ich wusste doch ich hab die Option schon mal gesehen gehabt. Danke für's Finden!

Durch grow right=2cm kannst du das level distance weglassen, oder hab ich was übersehen?

(06 Mär '14, 11:24) sudo

Das ist was ich suchte. Die Syntax mit edge node habe ich nicht gefunden. Danke! Schade dennoch das quotes nicht mit polyglossia kompatibel ist.

(06 Mär '14, 12:47) Sylvan
1

@sudo Danke für den Hinweis, level distance habe ich jetzt gelöscht. Den Abstand zwischen Test1 und Test2 könnte man mit branch down=<laenge> ändern.

(06 Mär '14, 22:57) esdd

Du kannst auch die \graphs mit der node- und egde-Syntax schreiben.

Open in writeLaTeX
\documentclass[tikz]{standalone}

\usepackage{polyglossia}
\setdefaultlanguage{german}

\usepackage{tikz}
\usetikzlibrary{graphs, graphdrawing}
\usegdlibrary{trees}

\begin{document}
    \begin{tikzpicture}[tree layout, grow=right, level distance=2cm]
        \begin{scope}[tree layout, grow=down, level distance=15mm]
            \node (test 1) {Test 1};
            \node (test 2) {Test 2};
            \draw (test 1) edge [-!-] (test 2); % Zieht eine unsichtbare Verbindungslinie
        \end{scope}
        \node (test) {Test};
        \draw (test 1) edge [->] node [auto] {x} (test)
              (test 2) edge [->] node [auto] {x} (test);
    \end{tikzpicture}             
\end{document}
Permanenter link

beantwortet 06 Mär '14, 11:21

sudo's gravatar image

sudo
2.0k51521
Akzeptiert-Rate: 39%

bearbeitet 10 Mär '14, 06:40

Durchaus ist das Beispiel hässlich. War nur als prinzipielles Beispiel für edges mit quotes in Verbindung mit der Graphdrawing-Library gedacht. Das level distance diente lediglich dazu, dass die "x" sichtbar sind und nichts überdecken. Aber danke dir für die Idee notfalls auf manuelle nodes auszuweichen.

(06 Mär '14, 12:54) Sylvan
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:

×731
×50
×14
×9

gestellte Frage: 05 Mär '14, 17:19

Frage wurde gesehen: 11,863 Mal

zuletzt geändert: 12 Jun '14, 20:01