2013-12-12 2 views
1

파이썬 클래스를 작성하여 이진 검색 트리를 표시하고 애니메이션을 적용했습니다. 그러나 pyDot 가장자리 및 노드 명령으로 생성 된 그래프는 내 나무의 각 요소를 연결하는 화살표의 각도 나 방향을 제어 할 수있는 것처럼 보이지 않습니다.pyDot로 그래프를 만들 때 선의 각도를 제어하는 ​​방법이 있습니까

노드 모양에는 많은 컨트롤이 있지만 선의 각도에 대한 컨트롤이없는 것처럼 보입니다. 그래프에 추가 될 때 가장자리에 추가 할 최소 각도 매개 변수를 찾고 싶습니까?

내가 가장자리 명령을 사용하여 노드를 그려 내 코드의 샘플입니다

def draw(parent_name, child_name): 
    # color for lines = red 
    edge = pydot.Edge(parent_name, child_name, color="#ff0000") 
    graph.add_edge(edge) 

최종 결과는 때 여러 노드 이진 검색 나무에 대한 내 그래프는 기존의 트리 구조처럼 보이지 않는다는 것입니다 단 하나의 아이가있다. http://www.embeddedcomponents.com/blogs/2013/12/visualizing-software-tree-structures/

답변

3

pydot 문서에서 :

임시 점 파일 및 프로세스 을에 그래프를 작성합니다 만들고 여기에

당신이 그렇지 않으면 작업 결과를 볼 수 있습니다 내 프로젝트에 대한 링크입니다 'prog'(기본값은 'twopi')에 의해 주어진 프로그램에서 포스트 스크립트 출력을 읽고 그것을 문자열로 반환하면 작업이 성공적입니다.

enter image description here

:

그것이 직접 제어 가장자리 천사 dot language를 사용하지만, 당신이 원하는 결과를 제공 할 수 보이지 에지를 추가하는 것은 불가능하다, 다음과 같은 그래프를 생성하는 예 here 참조

+0

감사합니다. 보이지 않는 노드가 트릭을해야합니다. – LectureMaker

+0

나는 당신의 제안 Guy를 사용할 수있었습니다. 다시 한번 감사드립니다. 보이지 않는 노드와 보이지 않는 가장자리를 사용했습니다. 그러나 유향 그래프의 화살표는 보이지 않거나 아무 옵션으로도 제거 할 수 없었으므로 흰색 바탕에 "흰색"의 색을 만들어야했습니다. 위의 질문에 게시 한 프로젝트 링크는 업데이트 된 그래프와 소스 코드를 생성하는 방법을 보여줍니다. – LectureMaker

관련 문제