Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CircularLayout ¶
type CircularLayout struct {
// contains filtered or unexported fields
}
CircularLayout arranges nodes in a circle
func NewCircularLayout ¶
func NewCircularLayout(config *LayoutConfig) *CircularLayout
NewCircularLayout creates a new circular layout
func (*CircularLayout) ComputeLayout ¶
func (cl *CircularLayout) ComputeLayout(gs *storage.GraphStorage, nodeIDs []uint64) (map[uint64]Position, error)
ComputeLayout arranges nodes in a circle
type ForceDirectedLayout ¶
type ForceDirectedLayout struct {
// contains filtered or unexported fields
}
ForceDirectedLayout implements force-directed graph layout
func NewForceDirectedLayout ¶
func NewForceDirectedLayout(config *LayoutConfig) *ForceDirectedLayout
NewForceDirectedLayout creates a new force-directed layout
func (*ForceDirectedLayout) ComputeLayout ¶
func (fdl *ForceDirectedLayout) ComputeLayout(gs *storage.GraphStorage, nodeIDs []uint64) (map[uint64]Position, error)
ComputeLayout computes positions using force-directed algorithm
type HierarchicalLayout ¶
type HierarchicalLayout struct {
// contains filtered or unexported fields
}
HierarchicalLayout arranges nodes in a tree hierarchy
func NewHierarchicalLayout ¶
func NewHierarchicalLayout(config *LayoutConfig) *HierarchicalLayout
NewHierarchicalLayout creates a new hierarchical layout
func (*HierarchicalLayout) ComputeLayout ¶
func (hl *HierarchicalLayout) ComputeLayout(gs *storage.GraphStorage, nodeIDs []uint64) (map[uint64]Position, error)
ComputeLayout arranges nodes hierarchically
type Layout ¶
type Layout interface {
ComputeLayout(gs *storage.GraphStorage, nodeIDs []uint64) (map[uint64]Position, error)
}
Layout interface for different layout algorithms
type LayoutConfig ¶
type LayoutConfig struct {
Width float64 // Canvas width
Height float64 // Canvas height
Iterations int // Number of iterations for iterative algorithms
Padding float64 // Padding from edges
}
LayoutConfig configures layout parameters
type Visualization ¶
type Visualization struct {
Nodes []*storage.Node
Edges []*storage.Edge
Positions map[uint64]Position
}
Visualization represents a graph visualization with layout
func (*Visualization) ExportJSON ¶
func (v *Visualization) ExportJSON() ([]byte, error)
ExportJSON exports the visualization to JSON