2009-10-01 7 views
1

시각적으로 표현하고자하는 데이터가 있습니다. 실제 데이터는 노드로 구성된 트리입니다. 각 노드에는 이와 관련된 많은 데이터가 있지만이 질문이있는 한 Python을 사용하여 시각적으로 트리를 표현할 수있는 방법이 필요합니다. 어떤 아이디어?Python에서 노드의 시각적 표현

내 머리 속에 떠오르는 다른 해결책은 WxPython이나 PyQT와 같은 GUI 라이브러리를 사용하거나 ReportLab과 같은 PDF 생성기를 사용하는 것이 었습니다. 밖에있는 라이브러리가 있기를 바라고 있습니다. 그래서 모든 노드의 위치를 ​​계획 할 필요가 없습니다.

답변

6

해당 상황에 해당되는지 잘 모르지만 graphviz을 보셨습니까? 괜찮은 파이썬 바인딩이 있고, 때로는 나무처럼 보일 수있는 의존성을 시각화하는데 사용했습니다.

+0

매우 멋지다! 내가 뭘 찾고 있었는지 고마워. – johannix

0

트리의 텍스트 표현을 사용해보십시오. 그렇지 않으면 graphviz (실제로는 점선)를 사용합니다.

digraph graphname { 
    root -> child1; 
    root -> child2; 
    child2 -> child3; 
    child2 -> child4; 
} 

그 다음에 열중를 실행하거나 도구 또는 선택 :

[root] 
+------child1 
+------child2 
    +-------child3 
    +-------child4 

이 그림은 GraphVIZ에서 같은 트리를 표시하려면 텍스트 파일에 넣고.

2

graphviz를 직접 사용하는 대신 NetworkX에 포함 된 시각화 도구를 사용해보십시오. 거기에있는 그래프 객체는 여러 목적에 탁월합니다.

+0

이미지가 너무 멋지게 보입니다. – johannix