Newer
Older
# coding = utf-8
import argparse
import networkx as nx
import pandas as pd
from lib.draw import draw
parser = argparse.ArgumentParser()
parser.add_argument("input_file",help="edgelist format (sep = \",\" )")
parser.add_argument("--country",help="if country node",action="store_true")
parser.add_argument("-w",action="store_true")
args = parser.parse_args()
if args.country:
iso2_name = json.load(open("data/ISO3166-1.alpha2.json.txt"))
world = gpd.read_file("data/TM_WORLD_BORDERS-0/TM_WORLD_BORDERS-0.3.shp")
world["centroid_c"] = world.centroid
iso2_togeom = dict(world["ISO2 centroid_c".split()].values)
positions = {k: [v.x, v.y] for k, v in iso2_togeom.items() if k in G}
for node in list(G.nodes()):
labels_dict[node] = iso2_name[node]
else:
labels_dict[node] = node
fig, ax = draw(G,labels_dict,positions)
if args.country:
world.boundary.plot(ax=ax)