Gerando grafos com JAVA

1- Introdução


Se você não se importa com a linguagem que você está usando e gosta de conhecer um pouco de cada coisa, você deve ter percebido algumas coisas. Primeiramente, não existe uma linguagem ruim ou boa, simplesmente linguagens diferentes. Qualquer linguagem que você escolha trabalhar será mais adequada para alguma função específica.

Por exemplo, é fácil associar o PHP com a web, no entanto, o que impede você de codificar ferramentas de Inteligência Artificial nela? A reposta é: a comunidade.

Querendo ou não você sempre depende da comunidade para desenvolver suas ferramentas. Isso acontece, por que, atualmente ninguém programa sozinho. Sempre existem frameworks, ferramentas, trechos de código, etc.

Portanto, hoje vamos criar uma visualização de grafos usando o JAVA. Essa tarefa é geralmente feita usando Python, porém, o Java tem suporte a essa funcionalidade e vamos mostrar como criar um exemplo simples.


2- Baixando os recursos

Primeiramente você precisará fazer download dos arquivos JAR. Esses arquivos permitirão você criar essas visualizações. A biblioteca usada será o GraphStream.




3- Codificando

Agora devemos instanciar a classe que representa nosso grafo:

 Graph graph = new SingleGraph("Tutorial 1");

A criação de um grafo precisa no mínimo de um nó. Portanto, uma das primeiras tarefas que devemos executar é a criação dos nós que vamos utilizar.

  graph.addNode("A");
 graph.addNode("B");
 graph.addNode("C");
 graph.addNode("D");
    
O próximo passo é adicionar vértices ao nosso grafo. Esses vértices são linhas que ligam um nó ao outro:

graph.addEdge("AB", "A", "B");
graph.addEdge("BC", "B", "C");
graph.addEdge("CA", "C", "A");
graph.addEdge("AD", "A", "D");
graph.addEdge("BD", "B", "D");

É possível ainda utilizar uma folha de CSS para formatar o estilo do seu grafo:

graph.addAttribute("ui.stylesheet", "url('\\"path to project"\\GraphCSS.css')");
       
Ou ainda podemos especificar um estilo para um nó específico:

Node n = graph.getNode("A");
n.addAttribute("ui.style", "shape:circle;");

Por fim, exiba o grafo:

graph.display();

O resultado final fica assim:



4- Código completo

import org.graphstream.graph.Graph;
import org.graphstream.graph.Node;
import org.graphstream.graph.implementations.SingleGraph;

public class GrafoDeErrosExample {

    public static void main(String[] args) {
        System.setProperty("org.graphstream.ui.renderer", "org.graphstream.ui.j2dviewer.J2DGraphRenderer");
        
        Graph graph = new SingleGraph("Tutorial 1");

        graph.addNode("A");
        graph.addNode("B");
        graph.addNode("C");
        graph.addNode("D");
        graph.addEdge("AB", "A", "B");
        graph.addEdge("BC", "B", "C");
        graph.addEdge("CA", "C", "A");
        graph.addEdge("AD", "A", "D");
        graph.addEdge("BD", "B", "D");

        graph.addAttribute("ui.stylesheet", "url('C:\\Users\\Vinicius\\Desktop\\Adriana java\\GrafoDeErros\\src\\grafodeerros\\GraphCSS.css')");
        
        Node n = graph.getNode("A");
        n.addAttribute("ui.style", "shape:circle;");
        graph.display();

    }

}


Gerando grafos com JAVA Gerando grafos com JAVA Reviewed by Vinicius dos Santos on 09:33:00 Rating: 5

Nenhum comentário

Escreva aí sua opinião!