diff --git a/main.py b/main.py
index 9cc40752d356cd581db624397919409fc481d0cf..47503334602429c3781e5f6687ac81cb195108d0 100644
--- a/main.py
+++ b/main.py
@@ -40,12 +40,22 @@ def test_graph():
     node_2 = graph.nodes.create('B')
     node_3 = graph.nodes.create('C')
     node_4 = graph.nodes.create('D')
+    node_5 = graph.nodes.create('E')
+    node_6 = graph.nodes.create('F')
 
     # Connect nodes.
-    graph.nodes.connect(node_1, node_2, 'a')
-    graph.nodes.connect(node_2, node_3, 'b')
-    graph.nodes.connect(node_4, node_3, 'c')
-    graph.nodes.connect(node_4, node_1, 'd')
+    edge_1 = graph.nodes.connect(node_1, node_2)
+    edge_2 = graph.nodes.connect(node_2, node_3)
+    edge_3 = graph.nodes.connect(node_3, node_5)
+    edge_4 = graph.nodes.connect(node_1, node_4)
+    edge_5 = graph.nodes.connect(node_4, node_6)
+    edge_6 = graph.nodes.connect(node_5, node_6)
+
+    # Set unique weights.
+    edge_2.set_weight(5)
+    edge_3.set_weight(15)
+    edge_5.set_weight(7)
+    edge_6.set_weight(2)
 
     # Display graph mapping.
     graph_title = 'Custom Graph Library - Graph Visual Mapping<br>Test Graph'
@@ -131,6 +141,7 @@ def graph_visual_mapping_examples():
     draw_random_nodes_large()
     draw_directed_graph()
     draw_state_machine()
+    draw_directed_weighted_graph()
 
 
 def draw_10_chained_nodes():
@@ -382,6 +393,46 @@ def draw_state_machine():
     logger.info('')
 
 
+def draw_directed_weighted_graph():
+    """
+        Draws a state machine graph with 4 nodes.
+        """
+    logger.info('')
+    logger.info('Creating and displaying Directed, Weighted Graph...')
+
+    # Create graph.
+    graph = DirectedWeightedGraph()
+
+    # Create some nodes.
+    node_1 = graph.nodes.create('A')
+    node_2 = graph.nodes.create('B')
+    node_3 = graph.nodes.create('C')
+    node_4 = graph.nodes.create('D')
+    node_5 = graph.nodes.create('E')
+    node_6 = graph.nodes.create('F')
+
+    # Connect nodes.
+    edge_1 = graph.nodes.connect(node_1, node_2)
+    edge_2 = graph.nodes.connect(node_2, node_3)
+    edge_3 = graph.nodes.connect(node_3, node_5)
+    edge_4 = graph.nodes.connect(node_1, node_4)
+    edge_5 = graph.nodes.connect(node_4, node_6)
+    edge_6 = graph.nodes.connect(node_5, node_6)
+
+    # Set unique weights.
+    edge_2.set_weight(5)
+    edge_3.set_weight(15)
+    edge_5.set_weight(7)
+    edge_6.set_weight(2)
+
+    # Display graph mapping.
+    graph_title = 'Custom Graph Library - Graph Visual Mapping<br>Directed, Weighted Graph'
+    graph.display.draw_graph_map(graph_title)
+
+    logger.info('Finished displaying "Directed, Weighted Graph".')
+    logger.info('')
+
+
 def await_user_input():
     """
     Function pause output so user can read text.