DOT
Author
Albert FloresDOT je značkovací jazyk pro textovou definici grafů a jejich zobrazení. Umožňuje definovat například barvu vrcholů a hran. Je používán zejména nástroji ze sady Graphviz, které z něj umí vytvořit obrázky grafů v běžných formátech jako je SVG a PDF, ale jeho podpora je širší. Vznikl ve Bellových laboratořích a AT&T. Jeho syntaxe je založena na céčku a je poměrně chudá. Například přímo v definici grafu lze jen velmi omezeně ovlivnit, jakým způsobem budou ve výsledném grafu rozmístěny jednotlivé uzly. V případě využití Graphvizu nabízí pro složitější grafy každý ze šesti nabízených nástrojů výrazně odlišný výsledek.
Konkurenčním formátem pro definici grafů je GraphML založený na standardu Extensible Markup Language.
Příklady
Neorientovaný graf
Příklad neorientovaného grafu Příkladem definice neorientovaného grafu je následující zdrojový kód:
// jmeno a stredniky jsou nepovinne graph jmeno { a -- b -- c; b -- d; }
Výsledek zobrazení takto definovaného grafu programem ze souboru Graphviz je na obrázku vpravo. Jak je z ukázky zřejmé, pro vyjádření hrany je používána dvojice spojovníků.
Úprava zobrazení
Ukázka možností nastavení zobrazení grafu Jak je patrné z následujícího příkladu, je možné nastavit i tvar vrcholů, způsob vykreslování hran (například tečkovanou čarou) a také barvy jednotlivých částí grafu.
graph grafik { // Vlastnost grafu size="1,1"; // "label" mění popisek vrcholu a [label="Foo"]; // "shape" mění tvar vrcholu b [shape=box]; // vlastnosti lze nastavit i u hran a -- b -- c [color=blue]; b -- d [style=dotted]; }
Mezi další, v tomto příkladu neilustrované možnosti, například patří využívání různých znaků Unicode a entit HTML v rámci popisků vrcholů a hran.
Orientovaný graf
Příklad orientovaného grafu Jak plyne z následujícího příkladu, v orientovaných grafech se pro označení hrany používá spojovník s většítkem:
digraph grafik { a -> b -> c; b -> d; }
Softwarová podpora
Hlavním softwarem podporujícím jazyk DOT je soubor nástrojů Graphviz, který umí z daných definic vytvořit obrazy ve formátu SVG, PDF, PNG a jiných. V rámci programovacího jazyka R nabízí podporu jazyka DOT knihovna DiagrammeR. +more Přímou editaci grafů v jazyce DOT nabízí vektorový grafický editor Xfig. Jazyk je podporován i vizualizačním nástrojem Gephi a řadou javascriptových knihoven.