com.hp.hpl.guess
Class StateGraph

java.lang.Object
  extended byedu.uci.ics.jung.utils.UserDataDelegate
      extended byedu.uci.ics.jung.graph.impl.AbstractArchetypeGraph
          extended byedu.uci.ics.jung.graph.impl.AbstractSparseGraph
              extended byedu.uci.ics.jung.graph.impl.SparseGraph
                  extended bycom.hp.hpl.guess.Graph
                      extended bycom.hp.hpl.guess.StateGraph
All Implemented Interfaces:
ArchetypeGraph, Cloneable, Graph, NumberEdgeValue, UserDataContainer

public class StateGraph
extends Graph


Nested Class Summary
 
Nested classes inherited from class edu.uci.ics.jung.utils.UserDataContainer
UserDataContainer.CopyAction
 
Field Summary
 
Fields inherited from interface edu.uci.ics.jung.graph.Graph
DIRECTED_EDGE, NOT_PARALLEL_EDGE, SIMPLE_EDGE, UNDIRECTED_EDGE
 
Fields inherited from interface edu.uci.ics.jung.graph.ArchetypeGraph
SUBSET_MANAGER
 
Constructor Summary
StateGraph(InterpreterAbstraction interp)
          create a new graph.
 
Method Summary
 void add(PySequence seq)
          add nodes and edges from the graph
 DirectedEdge addDirectedEdge(Node source, Node dest)
          user's API for adding a new directed edge to the graph and database
 Edge addEdge(Edge e)
          used to load edges from the database into the graph
 UndirectedEdge addEdge(Node node1, Node node2)
          user's API shortcut for adding a new undirected edge.
 Field addEdgeField(String fieldName, int sqlType, Object defaultValue)
           
 Edge addEdgeNoCheck(Edge e)
          use this if you know the storage object already contains the edge.
 Node addNode(Node n)
          used to load nodes from the database into the graph
 Node addNode(String name)
          user's API for adding a new node to the graph and database
 Field addNodeField(String fieldName, int sqlType, Object defaultValue)
           
 UndirectedEdge addUndirectedEdge(Node node1, Node node2)
           
 Set biComponentClusters()
          do Bi-Component Clustering
 void binPackLayout()
          packs all nodes
 void binPackLayout(boolean rescale)
          packs all nodes
 void centerAfterLayout(boolean state)
          should we center after doing a layout disable this to control it yourself
 void circleLayout()
          places all nodes in a circle
 void circleLayout(Field f, Node c)
          places all nodes in a circle with node c in the middle and its neighbors around that center with a radius proportional to field f (all nodes that are not neighbors of c will be left as is)
 void circleLayout(Field f, Node c, double xorigin, double yorigin)
          places all nodes in a circle with node c in the middle and its neighbors around that center with a radius proportional to field f (all nodes that are not neighbors of c will be left as is)
static Set clusters(Graph graph, GraphClusterer clusterer)
          meta clustering algorithm, takes a clustering algorithm and a graph and returns a set of sets
 void colorize(Field f)
           
 void colorize(Field f, Color start, Color end)
           
 void colorize(Field f, String start, String end)
           
 void computeAbstractRanker(AbstractRanker centrality, String guessKey)
          computes the ranking for nodes or edges and deposits the results based on guessKey
 void computeBetweennessCentrality()
           
 void computeDegreeDistributionRank()
           
 void computeDegrees()
           
 void computeHITS()
           
 void computePageRank(double bias)
           
 void computeRandomWalkBetweenness()
           
 void dagLayout()
          DAG
 double density()
           
 Set edgeBetweennessClusters(int numEdgesToRemove)
          do Edge betweenness clustering
 Set exactFlowCommunity(int cohesion)
          doesn't do anything right now
 void frLayout()
          Fruchterman-Rheingold, puts nodes in 1000 x 1000 square
 void frLayout(int width, int height)
          Fruchterman-Rheingold into a width x height grid
 void gemLayout()
          GEM Layout
 EdgeSchema getEdgeSchema()
           
 Set getNodes()
           
 NodeSchema getNodeSchema()
           
 Number getNumber(ArchetypeEdge e)
          for NumberEdgeValue interface, returns the weight of the given edge.
 Collection groupAndSortBy(Field field)
           
 Collection groupAndSortBy(PySequence seq, Field field)
           
 Collection groupAndSortEdgesBy(String field)
           
 Collection groupAndSortNodesBy(String field)
           
 Collection groupBy(Field field)
           
 Collection groupBy(PySequence seq, Field field)
           
 Collection groupEdgesBy(String field)
           
 Collection groupNodesBy(String field)
           
 void hideDisconnected()
           
 void isomLayout()
          ISOM Layout, asks every 30 seconds if you want to continue
 void isomLayout(int max)
          ISOM Layout for max steps
 void jfrLayout()
          the JUNG Fructerman-Rheingold Layout
 void jkkLayout1()
          the JUNG Kamada-Kawai (regular)
 void jkkLayout2()
          the JUNG Kamada-Kawai (int)
 void jSpringLayout()
          the JUNG Spring Layout (seems a little broken).
 void jSpringLayout(int max)
          run the JUNG spring layout for max iterations
 void kkLayout()
          Kamada-Kawai, puts nodes in 1000 x 1000 square
 void kkLayout(int width, int height)
          Kamada-Kawai into a width x height grid
 void layout(Layout lay)
          basic layout command, runs until completes or 30 seconds depending on if the layout is iterative
 void layout(Layout lay, int mi)
          runs the layout for some number of iterations (mi).
 void makeBarabasiAlbertRandom(int vert, int edges, int evolve)
           
 void makeEppsteinRandom(int nodes, int edges, int r)
           
 void makeErdosRenyiRandom(int nodes, double p)
           
 void makeFromDL(String filename)
           
 void makeFromGenerator(GraphGenerator gg)
           
 void makeFromGML(String filename)
           
 void makeKleinbergRandom(int nodes, double clust)
           
 void makeLattice1DRandom(int nodes, boolean tor)
           
 void makeLattice2DRandom(int nodes, boolean tor)
           
 void makeSimpleDirectedRandom(int nodes, int edges)
           
 void makeSimpleRandom(int nodes, int edges)
           
 void mdsLayout()
          Multidimensional scaling layout based on edge weight
 void morph(int state, long duration)
           
 void morph(String state, long duration)
           
 void moveLayout(double newX, double newY)
           
 void moveLayout(int newX, int newY)
          moves the nodes to a new origin
 void physicsLayout()
          physics layout, asks every 30 seconds if you want to keep running
 void physicsLayout(boolean gather, int max)
          physics layout
 void physicsLayout(int max)
          run physics layout for max steps
 void radialLayout(Node center)
          places all nodes in a growing radius around center
 void radialLayout(Node center, PySequence seq)
           
 void randomLayout()
          randomly places nodes in a 1000 x 1000 grid
 void randomLayout(int width, int height)
          randomly places nodes in a width x height grid
 void readjustEdges()
          moves edges so they don't overlap
 Set remove(PySequence seq)
          remove nodes and edges from the graph
 Set removeDisconnected()
           
 Set removeEdge(Edge e)
          remove an edge from the graph
 Set removeNode(Node n)
          remove a node from the graph
 Set removeSelfLoops()
           
 void rescaleLayout(double percent)
          rescales the layout to %percent
 void rescaleLayout(double xpercent, double ypercent)
          rescales the layout to %xpercent X %ypercent
 void rescaleLayout(int width, int height)
          rescales nodes to fit into width x height
 void resizeLinear(Field f, double start, double end)
           
 void resizeRandom(Field f, double start, double end)
           
 void setNumber(ArchetypeEdge edge, Number number)
          needed for NumberEdgeValue interface
 void setSynchronous(boolean state)
          should layouts run in their own threads?
 Collection sortBy(Field field)
           
 Collection sortBy(PySequence seq, Field field)
           
 void springLayout()
          spring layout, runs for 30 seconds and asks if you want to continue
 void springLayout(int max)
          spring layout for max iterations
 void sugiyamaLayout()
          Sugiyama
 void sugiyamaLayout(boolean bends)
          Sugiyama
 void sugiyamaLayout2()
          Sugiyama
static Color toColor(Object object)
           
static double toDouble(Object object)
           
 void translateLayout(double newX, double newY)
           
 void translateLayout(int newX, int newY)
          moves the nodes to a new origin
 Set weakComponentClusters()
          do weak component clustering
 void weightedKKLayout()
          the JUNG Kamada-Kawai (regular)
 void weightedSpringLayout(int min, int max)
          spring layout, runs for 30 seconds and asks if you want to continue
 void weightedSpringLayout(int minL, int maxL, int max)
          spring layout for max iterations
 
Methods inherited from class com.hp.hpl.guess.Graph
addDirectedEdgeWID, addUndirectedEdgeWID, colorize, colorize, complement, complement, computeAbstractRanker, computePageRank, exportGDF, getEdgeByID, getLastModTime, getNodeByName, getPageRankBias, makeFromGDF, makeFromPajek, removeComplete, removeEdgeComplete, removeNodeComplete, resetLastMod, setIdToEdge, setPageRankBias, setRankerWeightField
 
Methods inherited from class edu.uci.ics.jung.graph.impl.AbstractSparseGraph
addEdge, addVertex, getEdges, getVertices, isDirected, removeEdge, removeEdges, removeVertex, removeVertices
 
Methods inherited from class edu.uci.ics.jung.graph.impl.AbstractArchetypeGraph
addListener, copy, getEdgeConstraints, getVertexConstraints, newInstance, numEdges, numVertices, removeAllEdges, removeAllVertices, removeListener, toString
 
Methods inherited from class edu.uci.ics.jung.utils.UserDataDelegate
addUserDatum, clone, containsUserDatumKey, getUserDatum, getUserDatumCopyAction, getUserDatumKeyIterator, importUserData, removeUserDatum, setUserDataFactory, setUserDatum
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface edu.uci.ics.jung.graph.ArchetypeGraph
addListener, copy, getEdgeConstraints, getVertexConstraints, newInstance, numEdges, numVertices, removeAllEdges, removeAllVertices, removeListener
 
Methods inherited from interface edu.uci.ics.jung.utils.UserDataContainer
addUserDatum, clone, containsUserDatumKey, getUserDatum, getUserDatumCopyAction, getUserDatumKeyIterator, importUserData, removeUserDatum, setUserDatum
 

Constructor Detail

StateGraph

public StateGraph(InterpreterAbstraction interp)
create a new graph. Must be tied to a display object right now as well as an interpreter instance. Will probably relax that in the future

Parameters:
interp - the interpreter
Method Detail

addNode

public Node addNode(Node n)
used to load nodes from the database into the graph

Overrides:
addNode in class Graph
Parameters:
n - the node we're adding
Returns:
the added node (possibly a different object)

addNode

public Node addNode(String name)
user's API for adding a new node to the graph and database

Overrides:
addNode in class Graph
Parameters:
name - the new node name
Returns:
a new node object

addEdge

public Edge addEdge(Edge e)
used to load edges from the database into the graph

Overrides:
addEdge in class Graph
Parameters:
e - the edge to add
Returns:
the created edge

addEdgeNoCheck

public Edge addEdgeNoCheck(Edge e)
use this if you know the storage object already contains the edge. Shortcut for speeding things up

Overrides:
addEdgeNoCheck in class Graph

addDirectedEdge

public DirectedEdge addDirectedEdge(Node source,
                                    Node dest)
user's API for adding a new directed edge to the graph and database

Overrides:
addDirectedEdge in class Graph
Parameters:
source - source node
dest - destinatin node
Returns:
a new DirectedEdge between source and dest

addUndirectedEdge

public UndirectedEdge addUndirectedEdge(Node node1,
                                        Node node2)
Overrides:
addUndirectedEdge in class Graph

addEdge

public UndirectedEdge addEdge(Node node1,
                              Node node2)
user's API shortcut for adding a new undirected edge.

Overrides:
addEdge in class Graph

removeNode

public Set removeNode(Node n)
remove a node from the graph

Overrides:
removeNode in class Graph
Parameters:
n - the node to remove

removeEdge

public Set removeEdge(Edge e)
remove an edge from the graph

Overrides:
removeEdge in class Graph
Parameters:
e - the edge to remove

remove

public Set remove(PySequence seq)
remove nodes and edges from the graph

Overrides:
remove in class Graph
Parameters:
seq - the nodes + edges

add

public void add(PySequence seq)
add nodes and edges from the graph

Overrides:
add in class Graph
Parameters:
seq - the nodes + edges

getNodes

public Set getNodes()
Overrides:
getNodes in class Graph
Returns:
all the nodes in the graph

toColor

public static Color toColor(Object object)
Returns:
figures out if you have a Color object, Python object, or a string object, automagically converts

toDouble

public static double toDouble(Object object)
Returns:
figures out if you have a Double object, Python object and automatically converts

readjustEdges

public void readjustEdges()
moves edges so they don't overlap

Overrides:
readjustEdges in class Graph

kkLayout

public void kkLayout()
Kamada-Kawai, puts nodes in 1000 x 1000 square

Overrides:
kkLayout in class Graph

sugiyamaLayout

public void sugiyamaLayout()
Sugiyama

Overrides:
sugiyamaLayout in class Graph

sugiyamaLayout

public void sugiyamaLayout(boolean bends)
Sugiyama

Overrides:
sugiyamaLayout in class Graph

sugiyamaLayout2

public void sugiyamaLayout2()
Sugiyama

Overrides:
sugiyamaLayout2 in class Graph

dagLayout

public void dagLayout()
DAG

Overrides:
dagLayout in class Graph

frLayout

public void frLayout()
Fruchterman-Rheingold, puts nodes in 1000 x 1000 square

Overrides:
frLayout in class Graph

mdsLayout

public void mdsLayout()
Multidimensional scaling layout based on edge weight

Overrides:
mdsLayout in class Graph

moveLayout

public void moveLayout(int newX,
                       int newY)
moves the nodes to a new origin

Overrides:
moveLayout in class Graph
Parameters:
newX -
newY -

moveLayout

public void moveLayout(double newX,
                       double newY)
Overrides:
moveLayout in class Graph

translateLayout

public void translateLayout(int newX,
                            int newY)
moves the nodes to a new origin

Overrides:
translateLayout in class Graph
Parameters:
newX -
newY -

translateLayout

public void translateLayout(double newX,
                            double newY)
Overrides:
translateLayout in class Graph

rescaleLayout

public void rescaleLayout(int width,
                          int height)
rescales nodes to fit into width x height

Overrides:
rescaleLayout in class Graph
Parameters:
width - the rescale width
height - the rescale height

rescaleLayout

public void rescaleLayout(double percent)
rescales the layout to %percent

Overrides:
rescaleLayout in class Graph
Parameters:
percent - the percent to shrink/grow

rescaleLayout

public void rescaleLayout(double xpercent,
                          double ypercent)
rescales the layout to %xpercent X %ypercent

Overrides:
rescaleLayout in class Graph
Parameters:
xpercent - the percent to shrink/grow
ypercent - the percent to shrink/grow

radialLayout

public void radialLayout(Node center)
places all nodes in a growing radius around center

Overrides:
radialLayout in class Graph
Parameters:
center - the node to put in the center

radialLayout

public void radialLayout(Node center,
                         PySequence seq)
Overrides:
radialLayout in class Graph

randomLayout

public void randomLayout()
randomly places nodes in a 1000 x 1000 grid

Overrides:
randomLayout in class Graph

randomLayout

public void randomLayout(int width,
                         int height)
randomly places nodes in a width x height grid

Overrides:
randomLayout in class Graph
Parameters:
width - width
height - height

jfrLayout

public void jfrLayout()
the JUNG Fructerman-Rheingold Layout

Overrides:
jfrLayout in class Graph

jkkLayout1

public void jkkLayout1()
the JUNG Kamada-Kawai (regular)

Overrides:
jkkLayout1 in class Graph

jkkLayout2

public void jkkLayout2()
the JUNG Kamada-Kawai (int)

Overrides:
jkkLayout2 in class Graph

weightedKKLayout

public void weightedKKLayout()
the JUNG Kamada-Kawai (regular)

Overrides:
weightedKKLayout in class Graph

frLayout

public void frLayout(int width,
                     int height)
Fruchterman-Rheingold into a width x height grid

Overrides:
frLayout in class Graph
Parameters:
width -
height -

kkLayout

public void kkLayout(int width,
                     int height)
Kamada-Kawai into a width x height grid

Overrides:
kkLayout in class Graph
Parameters:
width -
height -

physicsLayout

public void physicsLayout(boolean gather,
                          int max)
physics layout

Overrides:
physicsLayout in class Graph
Parameters:
gather - merges connected nodes first (not very useful)
max - loops max times

physicsLayout

public void physicsLayout()
physics layout, asks every 30 seconds if you want to keep running

Overrides:
physicsLayout in class Graph

physicsLayout

public void physicsLayout(int max)
run physics layout for max steps

Overrides:
physicsLayout in class Graph
Parameters:
max - the number of steps

jSpringLayout

public void jSpringLayout()
the JUNG Spring Layout (seems a little broken). Asks every 30 seconds if you want to keep running

Overrides:
jSpringLayout in class Graph

jSpringLayout

public void jSpringLayout(int max)
run the JUNG spring layout for max iterations

Overrides:
jSpringLayout in class Graph
Parameters:
max - the number of iterations

circleLayout

public void circleLayout()
places all nodes in a circle

Overrides:
circleLayout in class Graph

binPackLayout

public void binPackLayout()
packs all nodes

Overrides:
binPackLayout in class Graph

binPackLayout

public void binPackLayout(boolean rescale)
packs all nodes

Overrides:
binPackLayout in class Graph

circleLayout

public void circleLayout(Field f,
                         Node c)
places all nodes in a circle with node c in the middle and its neighbors around that center with a radius proportional to field f (all nodes that are not neighbors of c will be left as is)

Overrides:
circleLayout in class Graph
Parameters:
f - the field to use to calc the radius
c - the node to put in the center

circleLayout

public void circleLayout(Field f,
                         Node c,
                         double xorigin,
                         double yorigin)
places all nodes in a circle with node c in the middle and its neighbors around that center with a radius proportional to field f (all nodes that are not neighbors of c will be left as is)

Overrides:
circleLayout in class Graph
Parameters:
f - the field to use to calc the radius
c - the node to put in the center
xorigin - the x location for the center node
yorigin - the y location for the center node

springLayout

public void springLayout()
spring layout, runs for 30 seconds and asks if you want to continue

Overrides:
springLayout in class Graph

springLayout

public void springLayout(int max)
spring layout for max iterations

Overrides:
springLayout in class Graph
Parameters:
max - number of iterations

weightedSpringLayout

public void weightedSpringLayout(int min,
                                 int max)
spring layout, runs for 30 seconds and asks if you want to continue

Overrides:
weightedSpringLayout in class Graph

weightedSpringLayout

public void weightedSpringLayout(int minL,
                                 int maxL,
                                 int max)
spring layout for max iterations

Overrides:
weightedSpringLayout in class Graph
Parameters:
max - number of iterations

gemLayout

public void gemLayout()
GEM Layout

Overrides:
gemLayout in class Graph

isomLayout

public void isomLayout()
ISOM Layout, asks every 30 seconds if you want to continue

Overrides:
isomLayout in class Graph

isomLayout

public void isomLayout(int max)
ISOM Layout for max steps

Overrides:
isomLayout in class Graph
Parameters:
max - the number of iterations

layout

public void layout(Layout lay)
basic layout command, runs until completes or 30 seconds depending on if the layout is iterative

Overrides:
layout in class Graph
Parameters:
lay - the layout to run

setSynchronous

public void setSynchronous(boolean state)
should layouts run in their own threads?


centerAfterLayout

public void centerAfterLayout(boolean state)
should we center after doing a layout disable this to control it yourself

Overrides:
centerAfterLayout in class Graph

layout

public void layout(Layout lay,
                   int mi)
runs the layout for some number of iterations (mi). If mi == Integer.MAX_VALUE this will run until the layout completes or if it is iterative it will ask every 30 seconds if you want to continue

Overrides:
layout in class Graph
Parameters:
lay - the layout to run
mi - the maximum iterations

biComponentClusters

public Set biComponentClusters()
do Bi-Component Clustering

Overrides:
biComponentClusters in class Graph
Returns:
a set of sets

edgeBetweennessClusters

public Set edgeBetweennessClusters(int numEdgesToRemove)
do Edge betweenness clustering

Overrides:
edgeBetweennessClusters in class Graph
Parameters:
numEdgesToRemove - edges to remove
Returns:
a set of sets

weakComponentClusters

public Set weakComponentClusters()
do weak component clustering

Overrides:
weakComponentClusters in class Graph
Returns:
a set of sets

exactFlowCommunity

public Set exactFlowCommunity(int cohesion)
doesn't do anything right now

Overrides:
exactFlowCommunity in class Graph

clusters

public static Set clusters(Graph graph,
                           GraphClusterer clusterer)
meta clustering algorithm, takes a clustering algorithm and a graph and returns a set of sets

Parameters:
graph - the graph to analyze
clusterer - the clustering algorithm to use
Returns:
a set of sets

setNumber

public void setNumber(ArchetypeEdge edge,
                      Number number)
needed for NumberEdgeValue interface

Specified by:
setNumber in interface NumberEdgeValue
Overrides:
setNumber in class Graph

getNumber

public Number getNumber(ArchetypeEdge e)
for NumberEdgeValue interface, returns the weight of the given edge.

Specified by:
getNumber in interface NumberEdgeValue
Overrides:
getNumber in class Graph

computeAbstractRanker

public void computeAbstractRanker(AbstractRanker centrality,
                                  String guessKey)
computes the ranking for nodes or edges and deposits the results based on guessKey

Parameters:
centrality - the ranker
guessKey - the place to put the results

computeBetweennessCentrality

public void computeBetweennessCentrality()
Overrides:
computeBetweennessCentrality in class Graph

computePageRank

public void computePageRank(double bias)

computeDegreeDistributionRank

public void computeDegreeDistributionRank()
Overrides:
computeDegreeDistributionRank in class Graph

computeHITS

public void computeHITS()
Overrides:
computeHITS in class Graph

computeRandomWalkBetweenness

public void computeRandomWalkBetweenness()
Overrides:
computeRandomWalkBetweenness in class Graph

computeDegrees

public void computeDegrees()
Overrides:
computeDegrees in class Graph

addNodeField

public Field addNodeField(String fieldName,
                          int sqlType,
                          Object defaultValue)
Overrides:
addNodeField in class Graph

addEdgeField

public Field addEdgeField(String fieldName,
                          int sqlType,
                          Object defaultValue)
Overrides:
addEdgeField in class Graph

getNodeSchema

public NodeSchema getNodeSchema()
Overrides:
getNodeSchema in class Graph

getEdgeSchema

public EdgeSchema getEdgeSchema()
Overrides:
getEdgeSchema in class Graph

sortBy

public Collection sortBy(PySequence seq,
                         Field field)
Overrides:
sortBy in class Graph

sortBy

public Collection sortBy(Field field)
Overrides:
sortBy in class Graph

groupBy

public Collection groupBy(PySequence seq,
                          Field field)
Overrides:
groupBy in class Graph

groupBy

public Collection groupBy(Field field)
Overrides:
groupBy in class Graph

groupAndSortBy

public Collection groupAndSortBy(Field field)
Overrides:
groupAndSortBy in class Graph

groupAndSortBy

public Collection groupAndSortBy(PySequence seq,
                                 Field field)
Overrides:
groupAndSortBy in class Graph

groupAndSortNodesBy

public Collection groupAndSortNodesBy(String field)
Overrides:
groupAndSortNodesBy in class Graph

groupNodesBy

public Collection groupNodesBy(String field)
Overrides:
groupNodesBy in class Graph

groupAndSortEdgesBy

public Collection groupAndSortEdgesBy(String field)
Overrides:
groupAndSortEdgesBy in class Graph

groupEdgesBy

public Collection groupEdgesBy(String field)
Overrides:
groupEdgesBy in class Graph

makeBarabasiAlbertRandom

public void makeBarabasiAlbertRandom(int vert,
                                     int edges,
                                     int evolve)
Overrides:
makeBarabasiAlbertRandom in class Graph

makeSimpleRandom

public void makeSimpleRandom(int nodes,
                             int edges)
Overrides:
makeSimpleRandom in class Graph

makeSimpleDirectedRandom

public void makeSimpleDirectedRandom(int nodes,
                                     int edges)
Overrides:
makeSimpleDirectedRandom in class Graph

makeEppsteinRandom

public void makeEppsteinRandom(int nodes,
                               int edges,
                               int r)
Overrides:
makeEppsteinRandom in class Graph

makeErdosRenyiRandom

public void makeErdosRenyiRandom(int nodes,
                                 double p)
Overrides:
makeErdosRenyiRandom in class Graph

makeLattice1DRandom

public void makeLattice1DRandom(int nodes,
                                boolean tor)
Overrides:
makeLattice1DRandom in class Graph

makeLattice2DRandom

public void makeLattice2DRandom(int nodes,
                                boolean tor)
Overrides:
makeLattice2DRandom in class Graph

makeKleinbergRandom

public void makeKleinbergRandom(int nodes,
                                double clust)
Overrides:
makeKleinbergRandom in class Graph

makeFromGenerator

public void makeFromGenerator(GraphGenerator gg)
Overrides:
makeFromGenerator in class Graph

makeFromGML

public void makeFromGML(String filename)
Overrides:
makeFromGML in class Graph

makeFromDL

public void makeFromDL(String filename)
Overrides:
makeFromDL in class Graph

morph

public void morph(String state,
                  long duration)
Overrides:
morph in class Graph

morph

public void morph(int state,
                  long duration)
Overrides:
morph in class Graph

colorize

public void colorize(Field f)
Overrides:
colorize in class Graph

colorize

public void colorize(Field f,
                     Color start,
                     Color end)
Overrides:
colorize in class Graph

colorize

public void colorize(Field f,
                     String start,
                     String end)
Overrides:
colorize in class Graph

resizeRandom

public void resizeRandom(Field f,
                         double start,
                         double end)
Overrides:
resizeRandom in class Graph

resizeLinear

public void resizeLinear(Field f,
                         double start,
                         double end)
Overrides:
resizeLinear in class Graph

density

public double density()
Overrides:
density in class Graph

removeSelfLoops

public Set removeSelfLoops()
Overrides:
removeSelfLoops in class Graph

removeDisconnected

public Set removeDisconnected()
Overrides:
removeDisconnected in class Graph

hideDisconnected

public void hideDisconnected()
Overrides:
hideDisconnected in class Graph