DOT (.gv, .dot)

Background & Context

    • DOT graph language and data format.
    • Commonly used exchange format for graphs.
    • Stores a single attributed, directed, or undirected graph.
    • Can contain user-defined graph, edge, and vertex attributes.
    • Plain text format.
    • Developed by AT&T Bell Laboratories.

Import & Export

  • Import["file.gv"] gives a Graph object representing the graph stored in the specified file.
  • Export["file.gv",expr] exports an adjacency matrix or edge information representing a graph to the DOT format.
  • Import["file.gv"] imports the graph from file and returns it as a Graph.
  • Import["file.gv",elem] imports the specified element from a DOT file.
  • Import["file.gv",{{elem1,elem2,}}] imports multiple elements.
  • The import format can be specified with Import["file","DOT"] or Import["file",{"DOT",elem,}].
  • Export["file.gv",expr,elem] creates a DOT file by treating expr as specifying element elem.
  • Export["file.gv",{expr1,expr2,},{{elem1,elem2,}}] treats each expri as specifying the corresponding elemi.
  • Export["file.gv",expr,opt1->val1,] exports expr with the specified option elements taken to have the specified values.
  • Export["file.gv",{elem1->expr1,elem2->expr2,},"Rules"] uses rules to specify the elements to be exported.
  • See the following reference pages for full general information:
  • Import, Exportimport from or export to a file
    CloudImport, CloudExportimport from or export to a cloud object
    ImportString, ExportStringimport from or export to a string
    ImportByteArray, ExportByteArrayimport from or export to a byte array

Import Elements

  • General Import elements:
  • "Elements" list of elements and options available in this file
    "Summary"summary of the file
    "Rules"list of rules for all available elements
  • Data representation elements:
  • "AdjacencyMatrix"edge information, given as a matrix
    "EdgeAttributes"edge attributes, represented as a list of rules
    "EdgeRules"connectivity data for the graph, given as a list of rules
    "Graph"graph stored in the file, given as a Graph object
    "GraphAttributes"graph attributes, represented as a list of rules
    "Graphics"graph stored in the file, rendered as a graph plot
    "VertexAttributes"vertex attributes, represented as a list of rules
    "VertexCount"number of vertices in the graph
    "VertexList"vertices, given as a list of strings
  • Import by default uses the "Graph" element when importing from DOT.



open allclose all

Basic Examples  (6)

Import a Graph object from a DOT file:

Show the Import elements available from an example file:

Import the connectivity rules of a graph:

Export a Graph to the DOT format:

Export an asymmetric adjacency matrix of a graph to the DOT format:

Convert a list of edge rules representing an undirected graph to the DOT language:

Scope  (3)

Import the list of vertices and the attributes of the vertices and display them in table form:

Export a list of edge rules and edge attributes to the DOT format:

Import edge rules from a DOT file and plot them as a three-dimensional graph: