Search in sources :

Example 21 with Node

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

the class DegreeNGTest method testSelfLoopDirectedGraphDegree.

@Test
public void testSelfLoopDirectedGraphDegree() {
    GraphModel graphModel = GraphGenerator.generateSelfLoopDirectedGraph(1);
    DirectedGraph graph = graphModel.getDirectedGraph();
    Node n = graph.getNode("0");
    Degree d = new Degree();
    assertEquals(d.calculateDegree(graph, n), 2);
    assertEquals(d.calculateInDegree(graph, n), 1);
    assertEquals(d.calculateOutDegree(graph, n), 1);
}
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)

Example 22 with Node

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

the class EigenvectorCentralityNGTest method testNullGraphEigenvectorCentrality.

@Test
public void testNullGraphEigenvectorCentrality() {
    GraphModel graphModel = GraphGenerator.generateNullUndirectedGraph(5);
    UndirectedGraph graph = graphModel.getUndirectedGraph();
    EigenvectorCentrality ec = new EigenvectorCentrality();
    ec.setDirected(false);
    double[] centralities = new double[5];
    HashMap<Integer, Node> indicies = new HashMap();
    HashMap<Node, Integer> invIndicies = new HashMap();
    ec.fillIndiciesMaps(graph, centralities, indicies, invIndicies);
    ec.calculateEigenvectorCentrality(graph, centralities, indicies, invIndicies, false, 100);
    Node n2 = graph.getNode("1");
    int index = invIndicies.get(n2);
    double ec2 = centralities[index];
    assertEquals(ec2, 0.0);
}
Also used : HashMap(java.util.HashMap) GraphModel(org.gephi.graph.api.GraphModel) UndirectedGraph(org.gephi.graph.api.UndirectedGraph) Node(org.gephi.graph.api.Node) Test(org.testng.annotations.Test)

Example 23 with Node

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

the class EigenvectorCentralityNGTest method testTwoConnectedNodesEigenvectorCentrality.

@Test
public void testTwoConnectedNodesEigenvectorCentrality() {
    GraphModel graphModel = GraphGenerator.generateCompleteUndirectedGraph(2);
    UndirectedGraph graph = graphModel.getUndirectedGraph();
    EigenvectorCentrality ec = new EigenvectorCentrality();
    double[] centralities = new double[2];
    HashMap<Integer, Node> indicies = new HashMap();
    HashMap<Node, Integer> invIndicies = new HashMap();
    ec.fillIndiciesMaps(graph, centralities, indicies, invIndicies);
    ec.calculateEigenvectorCentrality(graph, centralities, indicies, invIndicies, false, 100);
    Node n1 = graph.getNode("0");
    int index = invIndicies.get(n1);
    double ec1 = centralities[index];
    assertEquals(ec1, 1.0);
}
Also used : HashMap(java.util.HashMap) GraphModel(org.gephi.graph.api.GraphModel) UndirectedGraph(org.gephi.graph.api.UndirectedGraph) Node(org.gephi.graph.api.Node) Test(org.testng.annotations.Test)

Example 24 with Node

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

the class EigenvectorCentralityNGTest method testOneNodeEigenvectorCentrality.

@Test
public void testOneNodeEigenvectorCentrality() {
    GraphModel graphModel = GraphGenerator.generateNullUndirectedGraph(1);
    UndirectedGraph graph = graphModel.getUndirectedGraph();
    EigenvectorCentrality ec = new EigenvectorCentrality();
    double[] centralities = new double[1];
    HashMap<Integer, Node> indicies = new HashMap();
    HashMap<Node, Integer> invIndicies = new HashMap();
    ec.fillIndiciesMaps(graph, centralities, indicies, invIndicies);
    ec.calculateEigenvectorCentrality(graph, centralities, indicies, invIndicies, false, 100);
    Node n1 = graph.getNode("0");
    int index = invIndicies.get(n1);
    double ec1 = centralities[index];
    assertEquals(ec1, 0.0);
}
Also used : HashMap(java.util.HashMap) GraphModel(org.gephi.graph.api.GraphModel) UndirectedGraph(org.gephi.graph.api.UndirectedGraph) Node(org.gephi.graph.api.Node) Test(org.testng.annotations.Test)

Example 25 with Node

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

the class EigenvectorCentralityNGTest method testSpecial3UndirectedGraphEigenvectorCentrlity.

@Test
public void testSpecial3UndirectedGraphEigenvectorCentrlity() {
    GraphModel graphModel = Lookup.getDefault().lookup(GraphController.class).getGraphModel();
    UndirectedGraph undirectedGraph = graphModel.getUndirectedGraph();
    Node node1 = graphModel.factory().newNode("0");
    Node node2 = graphModel.factory().newNode("1");
    Node node3 = graphModel.factory().newNode("2");
    undirectedGraph.addNode(node1);
    undirectedGraph.addNode(node2);
    undirectedGraph.addNode(node3);
    Edge edge11 = graphModel.factory().newEdge(node1, node1, false);
    Edge edge12 = graphModel.factory().newEdge(node1, node2, false);
    Edge edge23 = graphModel.factory().newEdge(node2, node3, false);
    Edge edge33 = graphModel.factory().newEdge(node3, node3, false);
    undirectedGraph.addEdge(edge11);
    undirectedGraph.addEdge(edge12);
    undirectedGraph.addEdge(edge23);
    undirectedGraph.addEdge(edge33);
    UndirectedGraph graph = graphModel.getUndirectedGraph();
    EigenvectorCentrality ec = new EigenvectorCentrality();
    double[] centralities = new double[3];
    HashMap<Integer, Node> indicies = new HashMap();
    HashMap<Node, Integer> invIndicies = new HashMap();
    ec.fillIndiciesMaps(graph, centralities, indicies, invIndicies);
    ec.calculateEigenvectorCentrality(graph, centralities, indicies, invIndicies, false, 100);
    int index1 = invIndicies.get(node1);
    int index2 = invIndicies.get(node2);
    double ec1 = centralities[index1];
    double ec2 = centralities[index2];
    assertEquals(ec1, ec2);
}
Also used : HashMap(java.util.HashMap) Node(org.gephi.graph.api.Node) GraphModel(org.gephi.graph.api.GraphModel) UndirectedGraph(org.gephi.graph.api.UndirectedGraph) Edge(org.gephi.graph.api.Edge) GraphController(org.gephi.graph.api.GraphController) Test(org.testng.annotations.Test)

Aggregations

Node (org.gephi.graph.api.Node)314 GraphModel (org.gephi.graph.api.GraphModel)173 Test (org.testng.annotations.Test)156 Edge (org.gephi.graph.api.Edge)122 UndirectedGraph (org.gephi.graph.api.UndirectedGraph)106 DirectedGraph (org.gephi.graph.api.DirectedGraph)83 GraphController (org.gephi.graph.api.GraphController)83 HashMap (java.util.HashMap)66 Graph (org.gephi.graph.api.Graph)51 NodeIterable (org.gephi.graph.api.NodeIterable)23 LinkedList (java.util.LinkedList)22 Column (org.gephi.graph.api.Column)22 EdgeIterable (org.gephi.graph.api.EdgeIterable)16 Table (org.gephi.graph.api.Table)10 HashSet (java.util.HashSet)8 ArrayList (java.util.ArrayList)7 Color (java.awt.Color)6 GraphElementsController (org.gephi.datalab.api.GraphElementsController)6 DataTablesController (org.gephi.datalab.api.datatables.DataTablesController)5 Interval (org.gephi.graph.api.Interval)5