How to make a node of a larger grapho in python

0

I have an excell file of twitter users, and my program already draws me the graphic, later, I make a random walk, (where I'm going to see what route it made) I keep it in a dictionary, but I want the users that more they were visited have a larger node in my drawing.

import csv
import networkx as nx
import matplotlib.pyplot as plt
import random as np
import operator
from statistics import mode

f = open("Twitter_network_R.csv")
lines = csv.reader(f)
lista = []
usuarios = {}
for line in lines:
    lista.append(line[0])
    lista.append(line[1])
    if line[0] in usuarios:
        usuarios[line[0]].append (line[1])
    else:
        usuarios[line[0]] = [line[1]]

#generamos grafica inciso a
k = len(usuarios)
g = nx.Graph()

for i in set(lista):
    #generamos nodos
    g.add_node(i)
    if i in usuarios:
        for j in usuarios[i]:
            #generamos aristas
            g.add_edge(i, j)

nx.draw(g, with_labes=True)

plt.show()



#Inciso b Caminata
caminata = []
n = 40
#elegimos un i_0 (vertice inicial) de forma aleatoria
persona = np.choice(list(set(lista)))
#agregamos el usuario inicial
caminata.append(persona)
#y escogemos el proximo a quien visita, se agrega a una lista para ver su recorrido
for i in range(n):
    caminata[i] = np.choice(usuarios[caminata[i]])
    caminata.append(caminata[i])
caminata.pop()
print("La caminata que siguio fue:")
print(caminata)
#inciso c Nos dice las veces que fue visitado cada usuario i 
hasta el tiempo n
sinrep = list(set(caminata))
dic2 = {}
contador = []

for i in sinrep:
    m = caminata.count(i)
    contador.append(m)
    dic2[i] = m
    #aqui imprimimos cuantas veces fue visitado cada usuario
    print("la persona {} se visito {} veces ".format(i, m))
print("\nmetemos los datos a un diccionario")
print(dic2)


#inciso d, ordenar los vertices (nodos de mayor a menor cantidad de visitas
#es decir de mayor a menos segun la importancia del sitio
print("ordenar de mayor a menor")
resultado = sorted(dic2.items(),key=operator.itemgetter(1))
print(resultado)
resultado.reverse()
print(resultado)
    
asked by vngm19 25.10.2018 в 06:32
source

0 answers