Class ISOMLayout<V,E>
- java.lang.Object
-
- edu.uci.ics.jung.algorithms.layout.AbstractLayout<V,E>
-
- edu.uci.ics.jung.algorithms.layout.ISOMLayout<V,E>
-
- All Implemented Interfaces:
com.google.common.base.Function<V,java.awt.geom.Point2D>
,Layout<V,E>
,IterativeContext
,java.util.function.Function<V,java.awt.geom.Point2D>
public class ISOMLayout<V,E> extends AbstractLayout<V,E> implements IterativeContext
Implements a self-organizing map layout algorithm, based on Meyer's self-organizing graph methods.- Author:
- Yan Biao Boey
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
ISOMLayout.ISOMVertexData
-
Field Summary
Fields Modifier and Type Field Description protected GraphElementAccessor<V,E>
elementAccessor
protected com.google.common.cache.LoadingCache<V,ISOMLayout.ISOMVertexData>
isomVertexData
-
Fields inherited from class edu.uci.ics.jung.algorithms.layout.AbstractLayout
graph, initialized, locations, size
-
-
Constructor Summary
Constructors Constructor Description ISOMLayout(Graph<V,E> g)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
done()
Returnstrue
if the vertex positions are no longer being updated.protected ISOMLayout.ISOMVertexData
getISOMVertexData(V v)
java.lang.String
getStatus()
void
initialize()
Initializes fields in the node that may not have been set during the constructor.boolean
isIncremental()
This one is an incremental visualization.void
reset()
Resets the layout iteration count to 0, which allows the layout algorithm to continue updating vertex positions.void
step()
Advances the current positions of the graph elements.-
Methods inherited from class edu.uci.ics.jung.algorithms.layout.AbstractLayout
apply, getGraph, getSize, getX, getY, isLocked, lock, lock, offsetVertex, setGraph, setInitializer, setLocation, setLocation, setSize
-
-
-
-
Field Detail
-
isomVertexData
protected com.google.common.cache.LoadingCache<V,ISOMLayout.ISOMVertexData> isomVertexData
-
elementAccessor
protected GraphElementAccessor<V,E> elementAccessor
-
-
Method Detail
-
getStatus
public java.lang.String getStatus()
- Returns:
- the current number of epochs and execution status, as a string.
-
initialize
public void initialize()
Description copied from interface:Layout
Initializes fields in the node that may not have been set during the constructor. Must be called before the iterations begin.- Specified by:
initialize
in interfaceLayout<V,E>
-
step
public void step()
Advances the current positions of the graph elements.- Specified by:
step
in interfaceIterativeContext
-
getISOMVertexData
protected ISOMLayout.ISOMVertexData getISOMVertexData(V v)
-
isIncremental
public boolean isIncremental()
This one is an incremental visualization.- Returns:
true
is the layout algorithm is incremental,false
otherwise
-
done
public boolean done()
Returnstrue
if the vertex positions are no longer being updated. CurrentlyISOMLayout
stops updating vertex positions after a certain number of iterations have taken place.- Specified by:
done
in interfaceIterativeContext
- Returns:
true
if the vertex position updates have stopped,false
otherwise
-
-