Articles of graph

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?

¿Herramientas de Python para visualizar 100k Vertices y 1M Edges?

Estoy mirando para visualizar los datos, espero que sean interactivos. En este momento estoy usando NetworkX y Matplotlib, que maximiza mi 8gb cuando bash “dibujar” el gráfico. No sé qué opciones y técnicas existen para manejar un grupo * * de datos tan grande. Si alguien pudiera apuntarme en la dirección correcta, sería genial. También […]

Dibujo ASCII Graph de Python

Estoy buscando una biblioteca para dibujar gráficos ASCII (para usar en una consola) con Python. El gráfico es bastante simple: es solo un diagtwig de flujo para tuberías. Vi NetworkX y igraph, pero no vi una forma de salida a ascii. ¿Tienes experiencia en esto? ¡Muchas gracias! Patricio EDIT 1: En realidad encontré una biblioteca […]

¿Cómo afectan los bordes ponderados al PageRank en networkx?

Estoy jugando con networkx (biblioteca de gráficos en python) y encontré documentación que dice que el algoritmo PageRank toma en cuenta los pesos de los bordes al puntuar, pero me preguntaba si los pesos de los bordes más grandes eran mejores o los pesos más bajos.