title: Vary thickness of edges based on weight in NetworkX
body: <p>I'm trying to draw a network diagram using Python Networkx package.  I would like to vary the thickness of the edges based on the weights given to the edges.</p>
  <p>I am using the following code which draws the diagram, but I cannot get the edge to vary its thickness based on the weight.  Can someone help me with this problem?  Thanks in advance.</p>
  <pre><code>df = pd.DataFrame({ 'from':['D', 'A', 'B', 'C','A'], 'to':['A', 'D', 'A', 'E','C'], 'weight':['1', '5', '8', '3','20']})
  G=nx.from_pandas_edgelist(df, 'from', 'to', edge_attr='weight', create_using=nx.DiGraph() )
  nx.draw_shell(G, with_labels=True, node_size=1500, node_color='skyblue', alpha=0.3, arrows=True, 
                weight=nx.get_edge_attributes(G,'weight').values())
  </code></pre>