dot

package
v1.3.0-sp2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 19, 2024 License: AGPL-3.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Shape     = "shape"
	Style     = "style"
	Color     = "color"
	FillColor = "fillcolor"
	FontName  = "fontname"
	FontSize  = "fontsize"
	FontColor = "fontcolor"
	NodeSep   = "nodesep"
)

Common attribute names

View Source
const (
	ShapeBox       = "box"
	ShapePolygon   = "polygon"
	ShapeEllipse   = "ellipse"
	ShapeOval      = "oval"
	ShapeCircle    = "circle"
	ShapePoint     = "point"
	ShapeEgg       = "egg"
	ShapeTriangle  = "triangle"
	ShapeNone      = "none"
	ShapeDiamond   = "diamond"
	ShapeRectangle = "rectangle"
	ShapeSquare    = "square"
)

Common values for shape attribute

View Source
const (
	StyleSolid   = "solid"
	StyleDashed  = "dashed"
	StyleDotted  = "dotted"
	StyleBold    = "bold"
	StyleRounded = "rounded"
	StyleFilled  = "filled"
	StyleStriped = "striped"
)

Common values for style attribute

Variables

This section is empty.

Functions

This section is empty.

Types

type Graph

type Graph struct {
	// contains filtered or unexported fields
}

Graph represents a set of nodes, edges and attributes that can be translated to DOT language.

func New

func New() *Graph

func (*Graph) AddEdge

func (g *Graph) AddEdge(from, to int, label string) int

AddEdge adds a new edge between the given nodes with the specified label and returns an id for the new edge.

func (*Graph) AddNode

func (g *Graph) AddNode(label string) int

AddNode adds a new node with the given label and returns its id.

func (*Graph) DefaultEdgeAttribute

func (g *Graph) DefaultEdgeAttribute(name, value string)

DefaultEdgeAttribute sets an attribute for all edges by default.

func (*Graph) DefaultNodeAttribute

func (g *Graph) DefaultNodeAttribute(name, value string)

DefaultNodeAttribute sets an attribute for all nodes by default.

func (*Graph) DrawMultipleEdges

func (g *Graph) DrawMultipleEdges()

DrawMultipleEdges causes multiple edges between same pair of nodes to be drawn separately. By default, for a given pair of nodes, only the edge that was last added to the graph is drawn.

func (*Graph) EdgeAttribute

func (g *Graph) EdgeAttribute(id int, name, value string)

EdgeAttribute sets an attribute for the specified edge.

func (*Graph) GenerateDOT

func (g *Graph) GenerateDOT(w io.Writer)

GenerateDOT generates the graph description in DOT language

func (*Graph) GetOrCreateNode

func (g *Graph) GetOrCreateNode(label string) int

GetOrCreateNode returns the id of the node with the given label if it

func (*Graph) GraphAttribute

func (g *Graph) GraphAttribute(name, value string)

GraphAttribute sets an attribute for the graph

func (*Graph) MakeDirected

func (g *Graph) MakeDirected()

MakeDirected makes the graph a directed graph. By default, a new graph is undirected

func (*Graph) MakeSameRank

func (g *Graph) MakeSameRank(node1, node2 int, others ...int)

MakeSameRank causes the specified nodes to be drawn on the same rank. Only effective when using the dot tool.

func (*Graph) NodeAttribute

func (g *Graph) NodeAttribute(id int, name, value string)

NodeAttribute sets an attribute for the specified node.

func (*Graph) NodeExisted

func (g *Graph) NodeExisted(label string) (int, bool)

NodeExisted returns the id of the node with the given label if it

func (*Graph) SetTitle

func (g *Graph) SetTitle(title string)

SetTitle sets a title for the graph.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL