<｜begin▁of▁sentence｜>### Instruction:
As an automotive engineer, when designing and developing vehicles and their systems, including engines, chassis, and electrical components, it may be important to visualize complex network structures in the design process. For instance, if you have a hypothetical network of 10 interconnected components with 15 links representing interactions, you might want to utilize a custom edge drawer in a software tool like igraph to plot the network, ensuring that each undirected edge is accurately represented as a straight line. This visualization can provide valuable insights into the network connectivity and aid in the development of efficient vehicle systems.
### Response:
from igraph import Graph, plot
import igraph as ig

class CustomEdgeDrawer(ig.drawing.edge.AbstractCairoEdgeDrawer):
    def draw_undirected_edge(self, edge, src_vertex, dest_vertex):
        ctx = self.context
        ctx.set_source_rgba(0, 0, 0, 1)  # Set line color to black
        ctx.move_to(src_vertex['x'], src_vertex['y'])
        ctx.line_to(dest_vertex['x'], dest_vertex['y'])
        ctx.stroke()

def draw_graph(graph):
    visual_style = {
        'vertex_size': 20,
        'vertex_color': 'blue',
        'edge_curved': False,
        'edge_drawer_factory': CustomEdgeDrawer,
    }
    plot(graph, **visual_style)

# Example usage
g = Graph.Erdos_Renyi(n=10, m=15)
draw_graph(g)
<|EOT|>
