나는 모서리 목록을 가지고 있습니다.그래프를 시각적으로 표현하십시오.
(1,2),(1,3),(1,4),(1,5),(1,6),(2,4),(2,7),(3,4),(3,7),(4,5),(4,7),(5,6),(6,7)
이 그래프의 이미지는 어떻게 얻을 수 있습니까?
9000 개가 넘는 목록이 있기 때문에 자동으로 입력해야합니다.
나는 모서리 목록을 가지고 있습니다.그래프를 시각적으로 표현하십시오.
(1,2),(1,3),(1,4),(1,5),(1,6),(2,4),(2,7),(3,4),(3,7),(4,5),(4,7),(5,6),(6,7)
이 그래프의 이미지는 어떻게 얻을 수 있습니까?
9000 개가 넘는 목록이 있기 때문에 자동으로 입력해야합니다.
파이썬과 networkx
으로 그릴 수 있습니다.
import networkx
import pylab
edges = [(1,2),(1,3),(1,4),(1,5),(1,6),(2,4),(2,7),(3,4),(3,7),(4,5),(4,7),(5,6),(6,7)]
G = networkx.Graph(data=edges)
networkx.draw(G)
pylab.show()
당신은 GUI를 사용하지 않고 이미지로 그래프를 저장하는 방법에 대한 pylab
의 설명서를 읽어야합니다. ast.literal_eval
을 사용하여 원래 목록을 구문 분석 할 수 있습니다. 예를 들어 파일의 한 줄에 하나의 그래프로 저장된 경우 다음을 수행 할 수 있습니다.
with open('edges.txt') as f:
for line in f:
edges = list(ast.literal_eval(line))
# drawing goes here
(a, b) 가장자리 'a'가 항상 'b'보다 위쪽으로 그려 지도록하려면 어떻게해야합니까? –