From: SourceForge.net <no...@so...> - 2005-06-27 22:51:29
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=3222308 By: nobody Hello, I am a begginer in JUNG and have being tried to make a graph that will automatically sort according to a number that characterizes the edge (that will be between 0 and 1). I have done the basic part,creating the graph.How can it be sorted according to these labels? (two vertexes having 1 as an edge label must be far away while two others having e.g 0.04 must be very close). I also need to create a filter that will first remove the edges with large number. Plz help me if u can. What I have done so far is: Graph g = new UndirectedSparseGraph(); Vertex v1 = (Vertex) g.addVertex(new UndirectedSparseVertex()); Vertex v2 = (Vertex) g.addVertex(new UndirectedSparseVertex()); Vertex v3 = (Vertex) g.addVertex(new UndirectedSparseVertex()); Vertex v4 = (Vertex) g.addVertex(new UndirectedSparseVertex()); Vertex v5 = (Vertex) g.addVertex(new UndirectedSparseVertex()); UndirectedEdge e1 = new UndirectedSparseEdge(v1, v2); UndirectedEdge e2 = new UndirectedSparseEdge(v1, v3); UndirectedEdge e3 = new UndirectedSparseEdge(v3, v4); UndirectedEdge e4 = new UndirectedSparseEdge(v3, v2); UndirectedEdge e5 = new UndirectedSparseEdge(v5, v3); UndirectedEdge e6 = new UndirectedSparseEdge(v1, v5); g.addEdge(e1); g.addEdge(e2); g.addEdge(e3); g.addEdge(e4); g.addEdge(e5); g.addEdge(e6); v1.addUserDatum("label","File1",UserData.SHARED); v2.addUserDatum("label","File2",UserData.SHARED); v3.addUserDatum("label","File3",UserData.SHARED); v4.addUserDatum("label","File4",UserData.SHARED); v5.addUserDatum("label","File5",UserData.SHARED); e1.addUserDatum("label","0.77",UserData.SHARED); e2.addUserDatum("label","0.45",UserData.SHARED); e3.addUserDatum("label","0.88",UserData.SHARED); e4.addUserDatum("label","0.99",UserData.SHARED); e5.addUserDatum("label","0.45",UserData.SHARED); e6.addUserDatum("label","0.48",UserData.SHARED); PluggableRenderer pr = new PluggableRenderer(); EdgeStringer es = new EdgeStringer() { public String getLabel(Edge e) { return (String)e.getUserDatum("label"); } }; VertexStringer vs = new VertexStringer() { public String getLabel(Vertex v) { return (String)v.getUserDatum("label"); } }; pr.setVertexStringer(vs); pr.setEdgeStringer(es); Layout layout = new KKLayout(g); vv = new VisualizationViewer(layout, pr); vv.setGraphLayout(layout); ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=252062 |