2012-01-30 3 views
3

트위터에서 데이터를 수집하고 Graphviz를 통해 시각화하려고합니다. Graphviz를 이미 설치했고 현재 Python을 통해 DOT 언어 출력을 생성하려고 시도하고 있으며 코드에서 응답을받지 못하는 문제에 부딪 혔습니다. 내 코드가 DOT 파일을 생성했는지 여부를 알고 싶습니다. 그렇다면 DOT 파일은 어디에 있습니까? 아래는 제 코드입니다.Python에서 DOT 언어 출력을 생성하는 방법

OUT ="Paul_search_results.dot" 
try: 
    nx.drawing.write_dot(g, OUT) 
except ImportError, e: 
    dot = ['"%s" -> "&s" [tweet_id=%s]'% (n1, n2, g[n1][n2]['tweet_id'])\ 
      for n1, n2 in g.edges()] 
    f = open(OUT, 'w') 
    f.write('strict digraph {\n%s\n}' % (';\n'.join(dot),)) 
    f.close() 

나는 윈도우를 사용하고 그리고 내가 easy_install pygraphviz을 할 수 없습니다 알고 있지만, 위의 코드는 같은 일을해야한다. 이 책에 따르면 위의 코드와 함께 DOT 언어 출력을 가져야합니다. 하지만 내 코드에서 응답을 얻지 못했습니다.

이미 트위터와 노드 및 가장자리에서 정보를 수집했습니다.

>>> g.number_of_nodes() 
235 
>>> g.number_of_edges() 
202 

누군가 나를 도와주세요.

+0

'dot' 콘텐츠의 일부를 게시 할 수 있습니까? – jro

+0

[graphviz for windows] (http://www.graphviz.org/Download_windows.php)를 다운로드하면 python 바인딩이 올바르게 설치됩니다. –

답변

1

파일은 Paul_search_results.dot에 저장됩니다. 그 발견을 찾을 수 없다면, 전체 경로를 포함하도록 이름을 바꾸어 원하는 곳에 놓을 수 있습니다.

코드의 나머지 부분은 정확 해 보이지만 데이터를 보지 않고는 말하기가 어렵습니다. 생성되는 출력을 보려면 f=sys.stdout을 설정하십시오.

참고로, 프로젝트와 http://interactive.blockdiag.com

행운을 빌어에서 사용할 수 graphviz를의 온라인 버전이있다.

+0

정말 고마워요! 나는 이름을 바꿨다. 그리고 그것은 효과가 있었다. .. 나는 초기의 이름을 내가 그것을 발견 할 수없는 이유를 모른다. .. 그러나 이름을 바꾸는 화려한 생각. 감사, :) –

1

또는 f.write()의 출력 결과가 Paul_search_results.dot 인 경우 해당 파일은 "현재 작업 디렉토리"에 있습니다. 나는 Explorer.exe에있는 파일을 두 번 클릭하면 Windows가 현재 작업 디렉토리를 설정하는 실마리를 얻지 못했습니다. cmd.exe 명령 프롬프트를 시작하는 데 시간의 여지가 충분할 것입니다. cd 자신을 수행하십시오. 출력을 포함하고 직접 명령을 실행 한 다음 콘솔 출력을 조사하여 오류 메시지가 있는지 확인하십시오.

관련 문제