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

DeBruijnGraph

DeBruijnGraph
gives the n-dimensional De Bruijn graph with m symbols.
DeBruijnGraph
gives the De Bruijn graph with connectivity given by type.
  • DeBruijnGraph has vertices, consisting of all length-n sequences of m symbols. Given two vertices and , there is an edge from v to , provided , , ..., .
  • DeBruijnGraph specifies different connectivity types. The following types can be given:
"Noncyclic", ...,
"LeftShift", , ...,
"RightShift", ..., ,
The first few De Bruijn graphs with two symbols and different dimensions:
De Bruijn graphs with different numbers of symbols in dimension two:
De Bruijn graphs with different connectivity types:
The first few De Bruijn graphs with two symbols and different dimensions:
In[1]:=
Click for copyable input
Out[1]=
 
De Bruijn graphs with different numbers of symbols in dimension two:
In[1]:=
Click for copyable input
Out[1]=
 
De Bruijn graphs with different connectivity types:
In[1]:=
Click for copyable input
Out[1]=
Label the edge :
Label all edges individually:
Use Placed with symbolic locations to control label placement along an edge:
Use explicit coordinates to place labels:
Vary positions within the label:
Place multiple labels:
Use automatic labeling by values through Tooltip and StatusArea:
Get a list of built-in settings for EdgeShapeFunction:
Undirected edges including the basic line:
Lines with different glyphs on the edges:
Directed edges including solid arrows:
Line arrows:
Open arrows:
Specify an edge function for an individual edge:
Combine with a different default edge function:
Draw edges by running a program:
EdgeShapeFunction can be combined with EdgeStyle:
EdgeShapeFunction has higher priority than EdgeStyle:
Style all edges:
Style individual edges:
Specify a weight for all edges:
Use any numeric expression as a weight:
By default the layout is chosen automatically:
Specify layouts on special curves:
Specify layouts that satisfy optimality criteria:
VertexCoordinates overrides GraphLayout coordinates:
Use AbsoluteOptions to extract VertexCoordinates computed using a layout algorithm:
Highlight the vertex :
Get a list of built-in settings for GraphHighlightStyle:
Use built-in settings for GraphHighlightStyle:
Get a list of built-in settings for GraphStyle:
Use built-in settings for GraphStyle:
Specify a property for vertices:
By default any vertex coordinates are computed automatically:
Extract the resulting vertex coordinates using AbsoluteOptions:
Specify a layout function along an ellipse:
Use it to generate vertex coordinates for a graph:
VertexCoordinates has higher priority than GraphLayout:
Use vertex names as labels:
Label individual vertices:
Label all vertices:
Use any expression as a label:
Use Placed with symbolic locations to control label placement, including outside positions:
Symbolic outside corner positions:
Symbolic inside positions:
Symbolic inside corner positions:
Use explicit coordinates to place the center of labels:
Place all labels at the upper-right corner of the vertex and vary the coordinates within the label:
Place multiple labels:
Any number of labels can be used:
Use the argument to Placed to control formatting including Tooltip:
Use more elaborate formatting functions:
Use any Graphics, Image, or Graphics3D as a vertex shape:
Specify vertex shapes for individual vertices:
VertexShape can be combined with VertexSize:
VertexShape is not affected by VertexStyle:
VertexShapeFunction has higher priority than VertexShape:
Get a list of built-in collections for VertexShapeFunction:
Use built-in settings for VertexShapeFunction in the collection:
Simple basic shapes:
Common basic shapes:
Use built-in settings for VertexShapeFunction in the collection:
Use built-in settings for VertexShapeFunction in the collection:
Draw individual vertices:
Combine with a default vertex function:
Draw vertices using a predefined graphic:
Draw vertices by running a program:
VertexShapeFunction can be combined with VertexStyle:
VertexShapeFunction has higher priority than VertexStyle:
VertexShapeFunction can be combined with VertexSize:
VertexShapeFunction has higher priority than VertexShape:
By default the size of vertices is computed automatically:
Specify the size of all vertices using symbolic vertex size:
Use a fraction of the minimum distance between vertex coordinates:
Use a fraction of the overall diagonal for all vertex coordinates:
Specify size in both the and directions:
Specify the size for individual vertices:
VertexSize can be combined with VertexShapeFunction:
VertexSize can be combined with VertexShape:
Style all vertices:
Style individual vertices:
VertexShapeFunction can be combined with VertexStyle:
VertexShapeFunction has higher priority than VertexStyle:
VertexStyle can be combined with BaseStyle:
VertexStyle has higher priority than BaseStyle:
VertexShape is not affected by VertexStyle:
The GraphCenter of De Bruijn graphs:
Highlight the vertex eccentricity path:
Highlight the radius path:
Highlight the diameter path:
Highlight the vertex degree for DeBruijnGraph:
Highlight the closeness centrality:
Highlight the eigenvector centrality:
DeBruijnGraph has vertices:
DeBruijnGraph has edges:
Each vertex has exactly incoming and outgoing edges:
The number of outgoing edges of each vertex:
The number of incoming edges of each vertex:
DeBruijnGraph is the line graph of the DeBruijnGraph with the same symbols:
The setting DirectedEdges->False does not apply to DeBruijnGraph:
New in 8