GraphViz-Charts

   

In diesem Dokument wird beschrieben, wie Sie GraphViz-Diagramme mithilfe der Chart API erstellen.

Übersicht

GraphViz ist ein Paket von Open-Source-Tools zur Visualisierung von Verbindungsdiagrammen. Sie können GraphViz-Grafiken mit der DOT-Sprache und Layout-Engines Ihrer Wahl erstellen.

GraphViz-Diagramme unterstützen einen anderen Satz erforderlicher Parameter. Folgende Parameter werden unterstützt:

Parameter Erforderlich oder optional Beschreibung
cht=gv[:<opt_engine>] Erforderlich

Gibt ein GraphViz-Diagramm an. Sie können optional eine GraphViz-Engine angeben. Wenn Sie eine Layout-Engine festlegen möchten, verwenden Sie das Semikolon: und geben Sie für <opt_engine> einen der folgenden Strings an:

  • dot: die Standard-Engine
  • neato
  • twopi
  • circo
  • fdp

Eine Beschreibung der verschiedenen Engines finden Sie auf der GraphViz-Website.

chs=<width>x<height> Optional Wenn Sie keine Größe angeben, wird die Größe des Diagramms automatisch angepasst.
chl=<DOT_string> Erforderlich Das zu zeichnende Diagramm in DOT-Sprachnotation. Die DOT-Sprachreferenz finden Sie auf der GraphViz-Website.
chd NICHT VERWENDET GraphViz-Codes sind insofern ungewöhnlich, als der Parameter chd ignoriert wird. Fügen Sie ihn nicht in die URL ein.
chof=<output_format> Optional Ein Ausgabeformat für das Diagramm. In der Parameterbeschreibung erfahren Sie, welche Ausgabeformate unterstützt werden. Wenn Sie chof=json angeben, erhalten Sie eine JSON-Darstellung des Diagramms als HTML-Image Map, mit der Sie dem Diagramm Links oder Interaktivität hinzufügen können. Weitere Informationen finden Sie unter Diagramm-Imagemap erstellen.
callback=<handling_function_name> Optional Wenn Sie chof=json angeben, können Sie auch eine Funktion angeben, die mit dem zurückgegebenen JSON-Code aufgerufen werden soll, der die Imagemap des Diagramms enthält. Die Funktion muss einen einzelnen JSON-Parameter akzeptieren, bei dem es sich um eine JSON-Darstellung des Diagramms handelt. Auf deiner Seite kann das Diagramm dann als <img>-Element zum Rendern des Diagramms angegeben und dieselbe URL auch mit chof=json&callback=somefunc aufgerufen werden. Außerdem kann die Funktion somefunc() enthalten sein, die den zurückgegebenen JSON-Code parst und Links oder Interaktivität hinzufügt.

 

Beispiele:

Beschreibung Beispiel

Punkt-Engine-Beispiel (Standard).

Punktdiagramm
cht=gv
chl=digraph{A->B->C->A}
chs=150x150

Neato Engine-Beispiel für dasselbe Diagramm. Neato-Diagramm
cht=gv:neato
chl=digraph{A->B->C->A}
chs=150x150
Ein Punktdiagramm ohne angegebene Größe Die Größe des Diagramms wird automatisch angepasst. Punktdiagramm ohne angegebene Größe
cht=gv
chl=graph{a--b--c;b--d}
Ein komplexeres Diagramm. Ein ausgefalleneres Punktdiagramm
cht=gv
chl=
  graph{C_0--H_0[type=s];C_0--H_1[type=s];C_0--H_2[type=s];C_0--C_1[type=s];C_1--H_3[type=s];C_1--H_4[type=s];C_1--H_5[type=s]}

Im Folgenden finden Sie einige Tipps und bekannte Einschränkungen in den aktuellen GraphViz-Diagrammen:

  • Das graph-Attribut size sollte nicht verwendet werden. Verwenden Sie stattdessen den Chart API-Parameter chs.
  • Die maximale Anzahl von Knoten ist 200 und die maximale Anzahl für Kanten beträgt 400.
  • Kantenglättung, Transparenz und alternative Schriftarten werden nicht unterstützt.
  • Die node-Attribute image und shapefile werden nicht unterstützt und führen gegebenenfalls zu einem Fehler.
  • Die graph-Attribute ratio, margin und pad werden nicht unterstützt und gegebenenfalls ignoriert.