Ich habe mit diesem Problem für ein wenig jetzt gekämpft, ich weiß, das ist sehr einfach - aber ich habe wenig Erfahrung mit Python oder NetworkX. Meine Frage ist sehr einfach, ich versuche, einen großen Datensatz (etwa 200 Zeilen/Spalten) einer Matrix zu erstellen, die so aussieht. Die erste Zeile und die erste Spalte sind identisch.Plot NetworkX Graph von Adjacency Matrix in CSV-Datei
A,B,C,D,E,F,G,H,I,J,K
A,0,1,1,0,1,1,1,1,0,1,0
B,1,0,0,0,1,1,1,1,0,1,0
C,1,0,0,0,1,1,1,1,0,1,0
Es ist einfach eine Matrix zeigt, wie die Menschen miteinander verbunden sind, und alles, was ich will, ist diese CSV-Datei zu importieren und plotten, mit ihm in NetworkX entsprechenden Etiketten ist.
Ich habe diese Datei (people.cs
v), und suchen Sie in früheren Antworten here, so scheint es der beste Weg, dies zu tun ist, indem die Daten in einem Array mit numpy setzen.
Es scheint sich hierbei um ein Problem zu sein:
import numpy as np
import networkx as nx
import matplotlib.pyplot as plt
from numpy import genfromtxt
import numpy as np
mydata = genfromtxt('mouse.csv', delimiter=',')
ich folgende Ausgabe:
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy/lib/npyio.py", line 1272, in genfromtxt
fhd = iter(np.lib._datasource.open(fname, 'rbU'))
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy/lib/_datasource.py", line 145, in open
return ds.open(path, mode)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy/lib/_datasource.py", line 472, in open
found = self._findfile(path)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy/lib/_datasource.py", line 323, in _findfile
if self.exists(name):
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy/lib/_datasource.py", line 417, in exists
from urllib2 import urlopen
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 94, in <module>
import httplib
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py", line 69, in <module>
from array import array
File "/Users/Plosslab/Documents/PythonStuff/array.py", line 4, in <module>
NameError: name 'array' is not defined
Dies ist sehr hilfreich, aber es ist zwingend notwendig, dass die Knoten markiert sind, während genfromtxt, dass ein Teil zu entfernen scheint. – Workhorse
ok Ich werde den Code aktualisieren, damit Sie grundlegende Etiketten erhalten. – Scott
Ich glaube, ich habe es falsch verstanden. Sind die Buchstaben deine Etiketten? Wenn Sie etwas anderes als die Zeilen-/Spaltennummer als Beschriftungen verwenden möchten, können Sie benutzerdefinierte Beschriftungen hinzufügen: https://networkx.github.io/documentation/latest/examples/drawing/labels_and_colors.html – Scott