jak rysować ukierunkowane wykresy przy użyciu networkx w Pythonie?

Mam kilka węzłów pochodzących ze skryptu, który chcę zmapować na wykres. W poniższym przykładzie chcę użyć strzałki, aby przejść z punktu A do D i prawdopodobnie mieć zbyt dużą krawędź (czerwony lub coś). Zasadniczo jest to ścieżka od A do D, gdy obecne są wszystkie inne węzły. możesz wyobrazić sobie każdy węzeł jako miasto i podróżując od A do D wymaga wskazówek (ze strzałkami). Poniższy kod tworzy wykres

import networkx as nx
import numpy as np
import matplotlib.pyplot as plt

G = nx.Graph()
G.add_edges_from(
    [('A', 'B'), ('A', 'C'), ('D', 'B'), ('E', 'C'), ('E', 'F'),
     ('B', 'H'), ('B', 'G'), ('B', 'F'), ('C', 'G')])

val_map = {'A': 1.0,
           'D': 0.5714285714285714,
           'H': 0.0}

values = [val_map.get(node, 0.25) for node in G.nodes()]

nx.draw(G, cmap = plt.get_cmap('jet'), node_color = values)
plt.show()

ale chcę coś takiego jak na obrazku.

Strzałki pierwszego obrazu i krawędzie w kolorze czerwonym na drugi obraz. Dzięki

questionAnswers(5)

yourAnswerToTheQuestion