This is documentation for Mathematica 8, which was
based on an earlier version of the Wolfram Language.
View current documentation (Version 11.1)

Sparse6 (.s6)

sparse6 graph data format.
Used for storing undirected graphs.
ASCII format.
Stores connectivity information for multiple undirected graphs.
Suitable for large sparse graphs, stores up to vertices.
Related to graph6, which is optimized for small graphs or large dense graphs.
Developed by Brendan McKay at the Australian National University.
  • Import imports the graphs stored in the specified file, given as a single Graph object or a list of graphs.
  • Export exports an adjacency matrix or edge information for one graph or multiple graphs to the sparse6 format.
  • Import imports the specified element from a sparse6 file.
  • Import imports multiple elements.
  • Export creates a sparse6 file by treating expr as specifying element elem.
  • Export treats each as specifying the corresponding .
  • Export exports expr with the specified option elements taken to have the specified values.
  • Export uses rules to specify the elements to be exported.
  • See the reference pages for full general information on Import and Export.
"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 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 sparse6 files and for multi-graph sparse6 files.
  • Element specifications for sparse6 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 gives a list of all graphs in the file, rendered as a Graph object.
  • Import gives a rendering of the n^(th) graph in the file.
  • When importing a sparse6 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 .
  • When importing from a sparse6 file, all options supported by Graph can be given. Common settings include:
EdgeLabelsAutomaticlabels and label placement for edge
EdgeWeightAutomaticweight for edge
VertexCoordinatesAutomaticcenter coordinate for vertex
VertexLabelsAutomaticlabels and label placement for vertex
VertexShapeAutomaticgraphic shape for vertex
  • When importing graphics, all options supported by GraphPlot can be given. Common settings include:
DirectedEdgesAutomaticwhether to show edges as directed arrows
EdgeLabelingAutomaticwhether to include labels given for edges
EdgeRenderingFunctionAutomaticfunction to give explicit graphics for edges
VertexLabelingAutomaticwhether to show vertex names as labels
VertexRenderingFunctionAutomaticfunction to give explicit graphics for vertices
Import a sparse6 example file, giving a visual representation:
Read the adjacency matrix of the above example and render it as MatrixPlot:
Export a Graph object to the sparse6 format:
Export the adjacency matrix of a graph to the sparse6 format:
Export edge rules:
Import a sparse6 example file, giving a visual representation:
In[1]:=
Click for copyable input
Out[1]=
 
Read the adjacency matrix of the above example and render it as MatrixPlot:
In[1]:=
Click for copyable input
Out[1]=
 
Export a Graph object to the sparse6 format:
In[1]:=
Click for copyable input
Out[1]=
 
Export the adjacency matrix of a graph to the sparse6 format:
In[1]:=
Click for copyable input
Out[1]=
 
Export edge rules:
In[1]:=
Click for copyable input
Out[1]=