Graph6 (.g6)

Graph6 graph data format.
Used for storing undirected graphs.
ASCII format.
Stores connectivity information for multiple undirected graphs.
Suitable for small graphs or large dense graphs with up to vertices.
Related to sparse6 which is optimized for large sparse graphs.
Developed by Brendan McKay at The Australian National University.

Import and ExportImport and Export

  • Import["file.g6"] imports the graphs stored in the specified file, given as a single Graph object or a list of graphs.
  • Export["file.g6", expr] exports an adjacency matrix or edge information for one graph or for multiple graphs to the graph6 format.
  • Import["file.g6", elem] imports the specified element from a graph6 file.
  • Import["file.g6", {elem, suba, subb, ...}] imports a subelement.
  • Import["file.g6", {{elem1, elem2, ...}}] imports multiple elements.
  • The import format can be specified with Import["file", "Graph6"] or Import["file", {"Graph6", elem, ...}].
  • Export["file.g6", expr, elem] creates a graph6 file by treating expr as specifying element elem.
  • Export["file.g6", {expr1, expr2, ...}, {{elem1, elem2, ...}}] treats each as specifying the corresponding .
  • Export["file.g6", expr, opt1->val1, ...] exports expr with the specified option elements taken to have the specified values.
  • Export["file.g6", {elem1->expr1, elem2->expr2, ...}, "Rules"] uses rules to specify the elements to be exported.
  • See the reference pages for full general information on Import and Export.
  • ImportString and ExportString support the graph6 file format.

ElementsElements

  • General Import elements:
  • "Elements"list of elements and options available in this file
    "Rules"full list of rules for each element and option
    "Options"list of rules for options, properties and settings
  • Data representation elements:
  • "AdjacencyMatrix"edge information for all graphs in this file, given as a list of matrices
    "EdgeRules"connectivity data for all graphs, given as an array of rules
    "Graph"first graph stored in the file, given as a Graph object
    "Graphics"first graph stored in this file, rendered as a graph plot
    "GraphicsList"all graphs, given as a list of graphics objects
    "GraphList"all graphs in the file, given as a list of Graph objects
    "VertexCount"number of vertices in each graph, given as a list of integers
    "VertexList"list of integers representing the vertices
  • Import by default uses for simple graph6 files and for multi-graph graph6 files.
  • Element specifications for graph6 files containing multiple graphs:
  • elem,ndata representation element elem for the n^(th) graph in this file
    elem,{n1,n2,...}element elem for graphs , , ...
    elem,Allelement elem for all graphs, given as a list
  • Import["file.g6", "GraphList"] gives a list of all graphs in the file, rendered as Graph objects.
  • Import["file.g6", {"GraphList", n}] gives a rendering of the n^(th) graph in the file.
  • When importing a graph6 file using the element, no rules are returned for possible unconnected vertices.
  • Graphs including unconnected vertices can be fully specified using the element, or as a combination of and .

OptionsOptions

ExamplesExamplesopen allclose all

Basic Examples (7)Basic Examples (7)

This imports a small graph6 sample file:

In[1]:=
Click for copyable input
Out[1]=

Show the edge rules representing the graph:

In[1]:=
Click for copyable input
Out[1]=

Import the corresponding adjacency matrix and render it as a MatrixPlot:

In[1]:=
Click for copyable input
Out[1]=

Convert a string representing graph6 data to a visual representation of a graph:

In[1]:=
Click for copyable input
Out[1]=

Export a Graph object to the graph6 format:

In[1]:=
Click for copyable input
Out[1]=

Export the adjacency matrix of a graph to the graph6 format:

In[1]:=
Click for copyable input
Out[1]=

Export edge rules:

In[1]:=
Click for copyable input
Out[1]=
New in 6 | Last modified in 8
New to Mathematica? Find your learning path »
Have a question? Ask support »