Search in sources :

Example 86 with Node

use of org.gephi.graph.api.Node in project gephi by gephi.

the class WeightedDegreeNGTest method testStarGraphDegree.

@Test
public void testStarGraphDegree() {
    GraphModel graphModel = GraphGenerator.generateStarUndirectedGraph(5);
    Graph graph = graphModel.getGraph();
    Node n1 = graph.getNode("0");
    Node n2 = graph.getNode("1");
    WeightedDegree d = new WeightedDegree();
    d.execute(graph);
    double degree1 = (Double) n1.getAttribute(WeightedDegree.WDEGREE);
    double degree2 = (Double) n2.getAttribute(WeightedDegree.WDEGREE);
    double avDegree = d.getAverageDegree();
    double expectedAvDegree = 1.6667;
    double diff = Math.abs(avDegree - expectedAvDegree);
    assertEquals(degree1, 5.0);
    assertEquals(degree2, 1.0);
    assertTrue(diff < 0.001);
}
Also used : Graph(org.gephi.graph.api.Graph) DirectedGraph(org.gephi.graph.api.DirectedGraph) GraphModel(org.gephi.graph.api.GraphModel) Node(org.gephi.graph.api.Node) Test(org.testng.annotations.Test)

Example 87 with Node

use of org.gephi.graph.api.Node in project gephi by gephi.

the class WeightedDegreeNGTest method testDirectedStarOutGraphDegree.

@Test
public void testDirectedStarOutGraphDegree() {
    GraphModel graphModel = Lookup.getDefault().lookup(GraphController.class).getGraphModel();
    DirectedGraph directedGraph = graphModel.getDirectedGraph();
    Node firstNode = graphModel.factory().newNode("0");
    directedGraph.addNode(firstNode);
    for (int i = 1; i <= 5; i++) {
        Node currentNode = graphModel.factory().newNode(((Integer) i).toString());
        directedGraph.addNode(currentNode);
        Edge currentEdge = graphModel.factory().newEdge(firstNode, currentNode);
        directedGraph.addEdge(currentEdge);
    }
    DirectedGraph graph = graphModel.getDirectedGraph();
    Node n1 = graph.getNode("0");
    Node n3 = graph.getNode("2");
    WeightedDegree d = new WeightedDegree();
    d.execute(graph);
    double inDegree1 = (Double) n1.getAttribute(WeightedDegree.WINDEGREE);
    double outDegree1 = (Double) n1.getAttribute(WeightedDegree.WOUTDEGREE);
    double degree3 = (Double) n3.getAttribute(WeightedDegree.WDEGREE);
    assertEquals(inDegree1, 0.0);
    assertEquals(outDegree1, 5.0);
    assertEquals(degree3, 1.0);
}
Also used : DirectedGraph(org.gephi.graph.api.DirectedGraph) GraphModel(org.gephi.graph.api.GraphModel) Node(org.gephi.graph.api.Node) Edge(org.gephi.graph.api.Edge) GraphController(org.gephi.graph.api.GraphController) Test(org.testng.annotations.Test)

Example 88 with Node

use of org.gephi.graph.api.Node in project gephi by gephi.

the class WeightedDegreeNGTest method testOneNodeDegree.

@Test
public void testOneNodeDegree() {
    GraphModel graphModel = GraphGenerator.generateNullUndirectedGraph(1);
    Graph graph = graphModel.getGraph();
    Node n = graph.getNode("0");
    WeightedDegree d = new WeightedDegree();
    d.execute(graph);
    assertEquals(n.getAttribute(WeightedDegree.WDEGREE), 0.0);
}
Also used : Graph(org.gephi.graph.api.Graph) DirectedGraph(org.gephi.graph.api.DirectedGraph) GraphModel(org.gephi.graph.api.GraphModel) Node(org.gephi.graph.api.Node) Test(org.testng.annotations.Test)

Example 89 with Node

use of org.gephi.graph.api.Node in project gephi by gephi.

the class WeightedDegreeNGTest method testSelfLoopGraphDegree.

@Test
public void testSelfLoopGraphDegree() {
    GraphModel graphModel = GraphGenerator.generateSelfLoopUndirectedGraph(1);
    Graph graph = graphModel.getGraph();
    Node n = graph.getNode("0");
    WeightedDegree d = new WeightedDegree();
    d.execute(graph);
    assertEquals(n.getAttribute(WeightedDegree.WDEGREE), 2.0);
}
Also used : Graph(org.gephi.graph.api.Graph) DirectedGraph(org.gephi.graph.api.DirectedGraph) GraphModel(org.gephi.graph.api.GraphModel) Node(org.gephi.graph.api.Node) Test(org.testng.annotations.Test)

Example 90 with Node

use of org.gephi.graph.api.Node in project gephi by gephi.

the class WeightedDegreeNGTest method testSelfLoopDirectedGraphDegree.

@Test
public void testSelfLoopDirectedGraphDegree() {
    GraphModel graphModel = GraphGenerator.generateSelfLoopDirectedGraph(1);
    DirectedGraph graph = graphModel.getDirectedGraph();
    Node n = graph.getNode("0");
    WeightedDegree d = new WeightedDegree();
    d.execute(graph);
    assertEquals(n.getAttribute(WeightedDegree.WDEGREE), 2.0);
    assertEquals(n.getAttribute(WeightedDegree.WINDEGREE), 1.0);
    assertEquals(n.getAttribute(WeightedDegree.WOUTDEGREE), 1.0);
}
Also used : DirectedGraph(org.gephi.graph.api.DirectedGraph) GraphModel(org.gephi.graph.api.GraphModel) Node(org.gephi.graph.api.Node) Test(org.testng.annotations.Test)

Aggregations

Node (org.gephi.graph.api.Node)301 GraphModel (org.gephi.graph.api.GraphModel)169 Test (org.testng.annotations.Test)152 Edge (org.gephi.graph.api.Edge)116 UndirectedGraph (org.gephi.graph.api.UndirectedGraph)102 DirectedGraph (org.gephi.graph.api.DirectedGraph)84 GraphController (org.gephi.graph.api.GraphController)82 HashMap (java.util.HashMap)62 Graph (org.gephi.graph.api.Graph)50 Column (org.gephi.graph.api.Column)22 LinkedList (java.util.LinkedList)17 NodeIterable (org.gephi.graph.api.NodeIterable)12 EdgeIterable (org.gephi.graph.api.EdgeIterable)10 Table (org.gephi.graph.api.Table)10 ArrayList (java.util.ArrayList)7 HashSet (java.util.HashSet)6 GraphElementsController (org.gephi.datalab.api.GraphElementsController)6 Color (java.awt.Color)5 DataTablesController (org.gephi.datalab.api.datatables.DataTablesController)5 MouseClickEventListener (org.gephi.tools.spi.MouseClickEventListener)4