Le dessin d'un graphe ou d'un réseau à partir d'une matrice de distance?

Je suis en train de parcelle/esquisse (matplotlib ou une autre bibliothèque python) 2D réseau d'une grande matrice de distance où les distances seraient les bords de l'esquisse du réseau et de la ligne et de la colonne de ses nœuds.

DistMatrix =
[       'a',   'b',     'c',    'd'],
['a',   0,      0.3,    0.4,    0.7],
['b',   0.3,    0,      0.9,    0.2],
['c',   0.4,    0.9,    0,      0.1],
['d',   0.7,    0.2,    0.1,    0] ]

Je suis à la recherche d'esquisse ou de la parcelle de la 2d réseau de tel (le plus grand: des milliers de lignes et colonnes) de la matrice de distance: nœud " a " est lié à un nœud 'b' par un bord de la profondeur de 0,3, nœuds " c " et " d " serait liée par un bord de la profondeur de 0,1.
Quels sont les outils/bibliothèques que je peux utilisé (matrice de distance peut être converti en numpy matrice) pour obtenir de l'esquisse/graphique de la projection d'un tel réseau? (pandas, matplotlib, igraph,...?) et des pistes pour le faire rapidement (je ne voudrais pas définir mon auto Tkinter fonction pour le faire 😉 ) ?
merci pour les réponses.

En théorie, cela pourrait être impossible pour certaines matrices de distance. Imaginez par exemple un 4 x 4 matrice de distance avec toutes les entrées 1. Ceci définit en trois dimensions simplex. Il n'y a aucun moyen d'intégrer ce graphique en deux dimensions isometrically. Ce que le programme devrait-il faire dans ce cas?
à droite, donc pas de "longueur", mais "bord de la profondeur, qui relie deux nœuds

OriginalL'auteur sol | 2012-11-22