wikiacademia

site
Explanations and such here.
package tutorial; import java.awt.event.*; import javax.swing.*; import java.awt.*; import prefuse.*; import prefuse.action.*; import prefuse.controls.*; import prefuse.data.*; import prefuse.render.*; import prefuse.action.assignment.ColorAction; import prefuse.action.layout.graph.ForceDirectedLayout; import prefuse.activity.Activity; import prefuse.util.ColorLib; import prefuse.visual.VisualItem; public class BuildViz extends Visualization{ Visualization MyViz; Graph MyGraph; Display MyDisplay; public BuildViz(){ //Build The Graph MyGraph = new Graph(); Node n0 = MyGraph.addNode(); Node n1 = MyGraph.addNode(); Node n2 = MyGraph.addNode(); Node n3 = MyGraph.addNode(); Node n4 = MyGraph.addNode(); Node n5 = MyGraph.addNode(); Node n6 = MyGraph.addNode(); //Build the Visualization MyViz = new Visualization(); MyViz.add("graph", MyGraph); MyViz.setInteractive("graph.edges", null, false); MyViz.setInteractive("graph.nodes", null, true); MyViz.setValue("graph.nodes", null, VisualItem.SHAPE, new Integer(Constants.SHAPE_HEXAGON)); //Set up the Renderer ShapeRenderer myRenderer = new ShapeRenderer(20); DefaultRendererFactory drf = new DefaultRendererFactory(); drf.setDefaultRenderer(myRenderer); MyViz.setRendererFactory(drf); //Node Coloring ColorAction nStroke = new ColorAction("graph.nodes", VisualItem.STROKECOLOR); nStroke.setDefaultColor(ColorLib.gray(0)); nStroke.add("_hover", ColorLib.gray(150)); ColorAction nFill = new ColorAction("graph.nodes", VisualItem.FILLCOLOR); nFill.setDefaultColor(ColorLib.gray(255)); nFill.add("_hover", ColorLib.gray(150)); //Set the Edges ColorAction eStroke = new ColorAction("graph.edges", VisualItem.STROKECOLOR); eStroke.setDefaultColor(ColorLib.gray(150)); eStroke.add("_hover", ColorLib.gray(0)); //Bundle ColorActions ActionList color = new ActionList(); color.add(nStroke); color.add(nFill); color.add(eStroke); //Main Layout Routine ActionList layout = new ActionList(Activity.INFINITY); layout.add(color); layout.add(new ForceDirectedLayout("graph", true)); layout.add(new RepaintAction()); MyViz.putAction("layout", layout); //set up display MyDisplay = new Display(MyViz); MyDisplay.setSize(500,500); MyDisplay.pan(250,250); MyDisplay.addControlListener(new ZoomControl()); MyDisplay.addControlListener(new PanControl()); MyDisplay.addControlListener(new DragControl()); } }
http://cs.marlboro.edu/ courses/ fall2006/ tutorials/ information_visualization/ BuildViz
last modified Friday December 22 2006 1:29 am EST