title: plotting MultiDiGrpah results as a DiGraph
body: <p>I'm trying to create a network of many interactions, represented by edges the entities interacting, and the weight as the interaction type (transferred object between the entities). Some entities (nodes) interact via multiple the transfer of multiple objects.</p>
  <p>I'm running into difficulties when trying to plot such network. I realized I should be using MultiDiGraph of networkx, which best suits my goal, however I get an undesired result, in which not all edges appear in the final plot.</p>
  <p>My data basically looks like this, and I do the following:</p>
  <pre><code>edges = [
  ('type_1', 'type_2', {'w': 'interaction_type_1'}),
  ('type_1', 'type_2', {'w': 'interaction_type_2'}),
  ('type_1', 'type_2', {'w': 'interaction_type_3'}),
  ('type_2', 'type_3', {'w': 'interaction_type_1'}),
  ('type_2', 'type_3', {'w': 'interaction_type_3'})]
  
  G = nx.MultiDiGraph()
  
  G.add_edges_from(edges)
  </code></pre>
  <p>When inspecting the edges property of the graph object, I see that the interaction types are converted to indices, which I guess might be related to the problem, as seen below.</p>
  <pre><code>G.edges
  
  OutMultiEdgeView([('type_1', 'type_2', 0), ('type_1', 'type_2', 1), ('type_1', 'type_2', 2), ('type_2', 'type_3', 0), ('type_2', 'type_3', 1)])
  </code></pre>
  <pre><code>pos = nx.random_layout(G)
  edges = nx.draw_networkx_edges(G, pos)
  nodes = nx.draw_networkx_nodes(G, pos)
  labels = nx.draw_networkx_labels(G, pos) 
  </code></pre>
  <p><a href="https://i.stack.imgur.com/MtBX6.png" rel="nofollow noreferrer">This is the network I get</a> when running the above code, which is different than what I expected; a network with multiple edges between two nodes, as I specified in the edges added to the graph object.</p>
  <p>I guess it has to do with the way I add data to the edges themselves, but I can't figure out how to do this properly for the network I want to create, would be generated. Any help would be much appreciated</p>