graph
Cria um grafo não direcionado a partir de arestas ou de uma matriz de adjacência.
Categoria: Mathematics > Graph and Network Algorithms
Sintaxe
G = graph(s, t)
A aresta k liga os nós s(k) e t(k).
G = graph(s, t, w)
Também dá às arestas os pesos w.
G = graph(s, t, w, names)
Dá nomes aos nós.
G = graph(A)
Constrói o grafo a partir de uma matriz de adjacência simétrica; entradas diferentes de zero são arestas e seus valores são pesos.
Descrição
Um grafo é um conjunto de nós ligados por arestas, e em um graph as arestas não têm direção. O número de nós é o maior índice usado. Listas de arestas podem repetir um par, o que cria arestas paralelas; veja ismultigraph e simplify.
As arestas são mantidas em ordem, então G.Edges pode listá-las em ordem diferente da entrada. Você pode ler ou acrescentar colunas, por exemplo G.Edges.Weight = [3; 4]. Use plot(G) para desenhar o grafo e numnodes, numedges, neighbors e degree para inspecioná-lo.
Argumentos de entrada
s, t- Nós das pontas das arestas: inteiros positivos, ou nomes dados como cell arrays de texto. Os nomes criam os nós automaticamente.
w- Pesos numéricos, um por aresta.
A- Matriz quadrada simétrica.
A(i,j) ~= 0cria uma aresta entreiej.
Argumentos de saída
G- Um objeto
graph.G.Edgesé uma tabela com a colunaEndNodes(eWeightse houver pesos);G.Nodesé uma tabela de propriedades dos nós, comoName.
Exemplo
Lista de arestas, pesos, matriz, nomes
G = graph([1 1 2], [2 3 3], [4 6 5]);
disp(G.Edges)
H = graph([0 1 1; 1 0 0; 1 0 0]);
disp(H.Edges.EndNodes)
N = graph({'a','b','c'}, {'b','c','a'});
disp(N.Nodes.Name')
EndNodes Weight
________ ______
1 2 4
1 3 6
2 3 5
1 2
1 3
{'a'} {'b'} {'c'}