Try setting the pin properties of the vertices you want moved to False in your pin map. Cheers, Charlie
On 23 Nov 2014, at 19:47, luistavares <luis.tavares@msn.com> wrote:
Ok.
After generating a long graph, I use linspace function to generate positions for the main paths of the graph. So I fixed these positions using the pin property. But after calling the function sfdp_layout all positions are changed. Is this the expected behavior? I presented the results in the previous post. Here is my relevant code:
pin = g.new_vertex_property("bool") pos = g.new_vertex_property("vector<double>") v_c = g.new_vertex_property("double") v_s = g.new_vertex_property("int")
# I created a graph with 11000 nodes.
# setting positions for the main path position = np.linspace(0.0, 12.0, main_path_size) for i,idx in enumerate(main_path_i): pin[g.vertex(idx)] = True pos[g.vertex(idx)] = (0, position[i]) v_c[g.vertex(idx)] = 50 # color v_s[g.vertex(idx)] = 10 # size
# setting positions for the second main path position = np.linspace(0.0, 12.0, sec_path_size) for i,idx in enumerate(sec_path_i): pin[g.vertex(idx)] = True pos[g.vertex(idx)] = (position[i], 12.0) v_c[g.vertex(idx)] = 250 # color v_s[g.vertex(idx)] = 10 # size
# setting positions for the thirmain path position = np.linspace(0.0, 12.0, thi_path_size) for i,idx in enumerate(thi_path_i): pin[g.vertex(idx)] = True pos[g.vertex(idx)] = (-position[i], 12.0) v_c[g.vertex(idx)] = 350 # color v_s[g.vertex(idx)] = 10 # size
# calling the layout function pos = gt.sfdp_layout(g, pin=pin, pos=pos)
gt.graph_draw(g, pos, output_size=(1000, 1000), vertex_fill_color=v_c, vertex_size=v_s, vcmap=mat.cm.jet, output='mxt.png', fmt='png')
-- View this message in context: http://main-discussion-list-for-the-graph-tool-project.982480.n3.nabble.com/... Sent from the Main discussion list for the graph-tool project mailing list archive at Nabble.com. _______________________________________________ graph-tool mailing list graph-tool@skewed.de http://lists.skewed.de/mailman/listinfo/graph-tool