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


GraphPlot[{vi1->vj1, vi2->vj2, ...}]
generates a plot of the graph in which vertex vik is connected to vertex vjk.
GraphPlot[{{vi1->vj1, lbl1}, ...}]
associates labels lblk with edges in the graph.
generates a plot of the graph represented by the adjacency matrix m.
  • GraphPlot attempts to place vertices to give a well laid-out version of the graph.
  • The vertex names vk and the labels lblk can be any expressions.
  • GraphPlot has the same options as Graphics, with the following additions and changes:
DataRangeAutomaticthe range of vertex coordinates to generate
DirectedEdgesFalsewhether to show edges as directed arrows
EdgeLabelingTruewhether to include labels given for edges
EdgeRenderingFunctionAutomaticfunction to give explicit graphics for edges
FrameFalsewhether to draw a frame around the plot
FrameTicksNonewhat ticks to include on the frame
MethodAutomaticthe method used to lay out the graph
MultiedgeStyleAutomatichow to draw multiple edges between vertices
PackingMethodAutomaticmethod to use for packing components
PlotRangePaddingAutomatichow much padding to put around the plot
PlotStyleAutomaticoverall graphics directives for vertices and edges
SelfLoopStyleAutomatichow to draw edges linking a vertex to itself
VertexCoordinateRulesAutomaticrules for explicit vertex coordinates
VertexLabelingAutomaticwhether to show vertex names as labels
VertexRenderingFunctionAutomaticfunction to give explicit graphics for vertices
  • With the default setting VertexLabeling->Automatic, vertices are displayed as points, with their names vk given in tooltips.
  • Tooltip[vk, vlab] can be used to specify an alternative tooltip for a vertex. Tooltip[vi->vj, lbl] specifies a tooltip for an edge.
  • With VertexRenderingFunction->f, each vertex is rendered with the graphics primitives given by f[rk, vk], where rk is the position where the vertex is being placed, and vk is its name.
  • With EdgeRenderingFunction->g, each edge is rendered with the graphics primitives given by g[{ri, ..., rj}, {vi, vj}, lblij], where ri, rj are the beginning and ending points of the edge, vi, vj are the beginning and ending vertices, and the lblij is any label specified for the edge.
  • In the graphics generated by GraphPlot, edges are effectively drawn first, and vertices afterwards.
  • With the default setting DataRange->Automatic, coordinates are chosen so that the average length of the edges in the graph is approximately 1.
  • In VertexCoordinateRules, an explicit rule vk->{xk, yk} specifies coordinates for a vertex. If any coordinate is given as Automatic, it is found automatically. Vertices for which no rules are specified are taken to have automatically generated x and y positions.
  • The graph does not need to be connected. Disconnected components are typically arranged so as to fill area roughly uniformly.
  • When a graph is specified by an adjacency matrix, the names of its vertices are taken to be successive integers starting at 1.
  • With the default setting MultiedgeStyle->Automatic, multiple edges are not shown if the graph is specified by an adjacency matrix.
  • Possible settings for Method include "CircularEmbedding", "RandomEmbedding", "HighDimensionalEmbedding", "RadialDrawing", "SpringEmbedding" and "SpringElectricalEmbedding". The method "LinearEmbedding" lays out all vertices on a single line.
  • With Method->Automatic, GraphPlot normally uses the "SpringElectricalEmbedding" method, though uses the "RadialDrawing" method if the graph is a tree.
New in 6