33 lines
886 B
Python
33 lines
886 B
Python
import networkx as nx
|
|
import matplotlib.pyplot as plt
|
|
import sys
|
|
import os
|
|
import subprocess
|
|
import base64
|
|
if not os.path.exists('onionr.sh'):
|
|
os.chdir('../')
|
|
sys.path.append("src/")
|
|
from streamfill import identify_neighbors
|
|
|
|
G = nx.Graph()
|
|
size = 1000
|
|
|
|
onions = []
|
|
p = subprocess.Popen(["scripts/generate-onions.py", str(size)],
|
|
stdout=subprocess.PIPE,
|
|
stderr=subprocess.PIPE)
|
|
for line in iter(p.stdout.readline, b''):
|
|
line = line.decode().strip()
|
|
onions.append(line)
|
|
G.add_node(line[:6])
|
|
|
|
for onion in onions:
|
|
neighbors = identify_neighbors(onion, onions, 0.15 * size)
|
|
for neighbor in neighbors:
|
|
G.add_edge(onion[:6], neighbor[:6])
|
|
|
|
#nx.draw(G, with_labels=True, font_weight='bold')
|
|
#nx.draw_shell(G, with_labels=True)
|
|
#nx.draw_random(G, with_labels=True)
|
|
nx.draw_kamada_kawai(G)
|
|
plt.savefig("graph.png") |