In [30]:
import graph_tool.all as gt
import math
import numpy as np
In [2]:
g = gt.price_network(1000)
pos = gt.radial_tree_layout(g, g.vertex(0))
gt.graph_draw(g, pos=pos, output="graph-draw-radial.png")
Out[2]:
In [19]:
g = gt.price_network(1500)
deg = g.degree_property_map("in")
print(type(deg),type(deg.a))
In [31]:
deg.a = 4 * (np.sqrt(deg.a) * 0.5 + 0.4)
ebet = gt.betweenness(g)[1]
ebet.a /= ebet.a.max() / 10.
eorder = ebet.copy()
eorder.a *= -1
In [33]:
pos = gt.sfdp_layout(g)
control = g.new_edge_property("vector<double>")
for e in g.edges():
d = math.sqrt(sum((pos[e.source()].a - pos[e.target()].a) ** 2)) / 5
control[e] = [0.3, d, 0.7, d]
In [34]:
gt.graph_draw(g, pos=pos, vertex_size=deg, vertex_fill_color=deg, vorder=deg, \
edge_color=ebet, eorder=eorder, edge_pen_width=ebet, \
edge_control_points=control, output="graph-draw.pdf")
Out[34]:
In [27]:
print g.list_properties()
In [ ]: