I have a Graph with a lot of edges and nodes. I want to plot the edges width proportional to some weight array.
I found a code for doing this and the output returns very quick. But it ony shows all edges with the same width.
the graph object looks like this:
edge_trace = go.Scatter ( x = edge_x, y=edge_y, line = dict(width = 0.8, color="#fff"), hoverinfo = "none", mode = "lines) node_trace = x=node_x, y=node_y, mode='markers', text = " ", textposition ="middle left", hoverinfo='text', marker=dict( showscale=False, colorscale='RdBu', reversescale=True, color=, size=12, colorbar=dict( thickness=15, title='Node Connections', xanchor='left', titleside='right' ), line_width=2))
and thefigure object looks like
fig = go.Figure(data = [edge_trace,node_trace], layout = .....)
this doesn’t draw the weighted edges. So I add a loop selecting a weight from weight array, a proportional width named width_ and do this:
fig.add_trace(go.Scatter(x=X,y=Y), line = dict(width = width_, color = color_) )
but it draws above the previus graph and makes it slow.
Is there any solution? How can I pass a width array to edge_trace ?
Also I would like that the name of every edge shows to the left, now it only shows passing the mouse above them with a box as image