Articles of graph

python networkx – marca los bordes coloreando para el dibujo del gráfico

Estoy usando networkx para estudiar implementaciones de la teoría de grafos y me pregunto si hay alguna forma de marcar algunos de los bordes en un grafo dado. por ejemplo, digamos que tengo un gráfico G y encontré el camino más corto desde un nodo x al nodo y, ¿cómo puedo marcar el camino para […]

¿Encontrar camarillas máximas y eliminar nodos?

Estoy tratando de encontrar camarillas máximas para un conjunto de elementos. Actualmente estoy usando la biblioteca networkx de python y usando la función find_cliques () para encontrar todas las camarillas máximas como se muestra a continuación: import newtworkx as nx G = nx.Graph() E = [[1,2], [1,3], [1,4], [2,3], [2,4], [3,4], [2,6], [2,5], [5,6]] G.add_edges_from(E) […]

¿Cómo encontrar subgrafos en un grafo dirigido sin convertirlo en grafo no dirigido?

Tengo una gráfica que tiene muchos subgrafos. Tengo algunos bordes que conectan dos nodos en ambas direcciones, es decir, A -> B y B -> A. La bidireccionalidad es importante, ya que representa una falta de conocimiento de nuestra parte respecto de si A va a B o B va a A, y no tenemos […]

Bordes entre dos subgrafos en pydot

¿Alguien sabe cómo agregar un borde entre dos subgrafos (agrupaciones) en pydot? callgraph = pydot.Dot(graph_type=’digraph’,fontname=”Verdana”) cluster_foo=pydot.Cluster(‘foo’,label=’foo’) cluster_foo.add_node(pydot.Node(‘foo_method_1′,label=’method_1’)) callgraph.add_subgraph(cluster_foo) cluster_bar=pydot.Cluster(‘bar’,label=’Component1′) cluster_bar.add_node(pydot.Node(‘bar_method_a’)) callgraph.add_subgraph(cluster_bar) Lo intenté: callgraph.add_edge(pydot.Edge(“foo”,”bar”)) pero no funciona ¡Simplemente crea dos nodos más con la etiqueta “foo” y “barra” en el gráfico inicial y la posición y el borde entre ellos! ¿Alguien puede ayudar, por favor? […]

Uso de la redX de python para calcular el rango de página personalizado

Estoy tratando de construir un gráfico dirigido y calcular el rango de página personalizado sobre este gráfico. Entonces, supongo que tengo una gráfica con vértices {1,2,3,4} y bordes que van de 2, 3 y 4 al vértice 1, me gustaría: (1) calcular el rango de página personalizado de cada vértice con respecto a 1 (2) […]

Teoría de grafos en redx

Estoy empezando a usar esta interfaz ahora, tengo algo de experiencia con Python pero nada extenso. Estoy calculando la transitividad y la estructura de la comunidad de un pequeño gráfico: import networkx as nx G = nx.read_edgelist(data, delimiter=’-‘, nodetype=str) nx.transitivity(G) #find modularity part = best_partition(G) modularity(part, G) Sin embargo, obtengo la transitividad muy bien; existe […]

Cómo boost el espaciado de los nodos para networkx.spring_layout

Dibujando un gráfico clique con import networkx as nx …. nx.draw(G, layout=nx.spring_layout(G)) produce la siguiente imagen: Obviamente, es necesario boost el espacio entre los nodos (por ejemplo, la longitud del borde). He buscado en Google y he encontrado esta sugerencia aquí: Para algunos de los algoritmos de diseño hay un parámetro de “escala” que podría […]

¿Cómo usar el argumento `pos` en` networkx` para crear un gráfico de estilo de diagtwig de flujo? (Python 3)

Estoy tratando de crear un gráfico de red lineal usando Python (preferiblemente con matplotlib y networkx aunque estaría interesado en bokeh ) similar en concepto al que se muestra a continuación. ¿Cómo se puede construir esta gráfica de forma eficiente ( pos ?) En Python usando networkx ? Quiero usar esto para ejemplos más complicados, […]

Combina dos gráficos de puntos en un nodo común en Python

La salida analizada por dependencia (utilizando Stanford Parser) de las siguientes dos oraciones es la siguiente. Oración 1 – John es un científico de la computación Formato de punto – digraph G{ edge [dir=forward] node [shape=plaintext] 0 [label=”0 (None)”] 0 -> 5 [label=”root”] 1 [label=”1 (John)”] 2 [label=”2 (is)”] 3 [label=”3 (a)”] 4 [label=”4 (computer)”] […]

¿Método para guardar el gráfico de networkx al gráfico de json?

Parece que debería haber un método en networkx para exportar el formato de gráfico json, pero no lo veo. Me imagino que esto debería ser fácil de hacer con nx.to_dict_of_dicts (), pero requeriría un poco de manipulación. ¿Alguien sabe de una solución simple y elegante?