Method: NetworkX::MultiGraph#to_undirected

Defined in:
lib/networkx/multigraph.rb

#to_undirectedObject

Returns the undirected version of the graph

Examples:

graph.to_undirected


130
131
132
133
134
135
136
137
138
139
140
141
# File 'lib/networkx/multigraph.rb', line 130

def to_undirected
  graph = NetworkX::Graph.new(**@graph)
  @nodes.each { |node, node_attr| graph.add_node(node, **node_attr) }
  @adj.each do |node1, node1_edges|
    node1_edges.each do |node2, node1_node2|
      edge_attrs = {}
      node1_node2.each { |_key, attrs| edge_attrs.merge!(attrs) }
      graph.add_edge(node1, node2, **edge_attrs)
    end
  end
  graph
end