Articles of networkx

Dibujando un gráfico enorme con networkX y matplotlib

Estoy dibujando un gráfico con alrededor de 5K nodos usando networkX y matplotlib. La ventana GTK de matplotlib tiene herramientas para ampliar y visualizar el gráfico. ¿Hay alguna manera, puedo guardar una versión ampliada para una visualización adecuada más tarde? import matplotlib.pyplot as plt import networkx as nx pos=nx.spring_layout(G) #G is my graph nx.draw(G,pos,node_color=’#A0CBE2′,edge_color=’#BB0000′,width=2,edge_cmap=plt.cm.Blues,with_labels=True) #plt.show() […]

¿Cómo crear gráficos de red Gephi desde Python?

Acabo de enterarme de GephiStreamer. https://pypi.python.org/pypi/GephiStreamer Usando este paquete, uno puede enviar instrucciones de python a Gephi para crear nodos y bordes en Gephi. # Create a node with a custom_property node_a = graph.Node(“A”,custom_property=1) # Create edge edge_ab = graph.Edge(node_a,node_b,custom_property=”hello”) stream.add_edge(edge_ab) Del mismo modo quiero hacer todo en Gephi a través de Python. Esto es […]

NetworkX (Python): cómo cambiar el peso de los bordes por regla designada

Tengo un gráfico ponderado: F=nx.path_graph(10) G=nx.Graph() for (u, v) in F.edges(): G.add_edge(u,v,weight=1) obtener la lista de nodos: [(0, 1), (1, 2), (2, 3), (3, 4), (4, 5), (5, 6), (6, 7), (7, 8), (8, 9)] Quiero cambiar el peso de cada borde por esta regla: elimine un nodo, como el nodo 5, claramente, el borde […]

Agregue pesos de borde para trazar la salida en networkx

Estoy haciendo algo de teoría gráfica en python usando el paquete networkx. Me gustaría agregar los pesos de los bordes de mi gráfico a la salida del gráfico. ¿Cómo puedo hacer esto? Por ejemplo, ¿cómo modificaría el siguiente código para obtener el resultado deseado? import networkx as nx import matplotlib.pyplot as plt G=nx.Graph() i=1 G.add_node(i,pos=(i,i)) […]

Aclaración de copia de Networkx

Según el documento , parece que el método networkx.copy hace una copia profunda de la gráfica. Estoy más preocupado por la statement Esto hace una copia completa del gráfico que incluye todos los atributos de nodo o borde. ¿Esto sugiere que también hace una copia de lo que contienen los nodos? Por ejemplo si tengo […]

Obtención de la raíz (cabeza) de un DiGraph en networkx (Python)

Estoy tratando de usar networkx para hacer una representación gráfica en un proyecto, y no estoy seguro de cómo hacer algunas cosas que deberían ser simples. Creé un gráfico dirigido con un montón de nodos y bordes, de modo que solo hay un elemento raíz en este gráfico. Ahora, lo que me gustaría hacer es […]

Graficación de log-bin distribuciones de grado de red

A menudo he encontrado y realizado distribuciones de grado largo / histogtwigs de redes complejas como las que se muestran a continuación. Hacen el extremo pesado de estas colas, bueno, muy pesado y lleno de muchas observaciones: Sin embargo, muchas de las publicaciones que leo tienen distribuciones de grado mucho más limpias que no tienen […]

Networkx: convierte multigraph en gráfico simple con bordes ponderados

Tengo un objeto multigraph y me gustaría convertirlo en un objeto gráfico simple con bordes ponderados. He revisado la documentación de networkx y parece que no puedo encontrar una función incorporada para lograrlo. Me preguntaba si alguien sabía de una función incorporada en networkx que pudiera lograr este objective. Miré las funciones to_directed (), to_undirected […]

Agregue atributos en Networkx write_graphml antes de abrir en Gephi

Tengo un dataframe que consta de posibles conexiones de red en el formato df = pd.DataFrame([“A”, “B”, “Count”, “some_attribute”]) . Este dataframe representa conexiones como esta: A tiene una conexión con B Esta conexión se produjo “Count” veces Esta conexión tiene un atributo específico (es decir, un tipo específico de contacto) Quiero exportar este Dataframe […]

cómo seleccionar dos nodos (pares de nodos) aleatoriamente de un gráfico que NO está conectado, Python, networkx

Quiero extraer dos nodos de un gráfico, el problema es que no deberían estar conectados, es decir, no existe un borde directo entre ellos. Sé que puedo obtener bordes aleatorios utilizando “random.choice (g.edges ())” pero esto me daría nodos aleatorios que están conectados. Quiero pares de nodos que NO estén conectados (un par de bordes […]