2011-03-25 7 views
1

matplotlib에서 다소 복잡한 플롯 작업을 필요로하는 다소 복잡한 플롯 작업이 있습니다. 특정 플롯 된 라인을 제외하는 autoscale() 함수가 필요합니다.matplotlib에서 autoscale의 라인을 제외합니다.

matplotlib에 내장 된 autoscale_view() 함수는 축의 모든 bboxes의 합집합을 얻은 다음이를 기반으로 비율을 조정합니다. loose_autoscale_view를 작성하여 여백 요소를 추가합니다. 그러나 두 축 모두 축의 모든 점을 기준으로 비율을 결정합니다. 나는 그 점을 원하고 싶지 않다. 나는 약간의 점을 아래쪽 여백에두기를 원한다.))

1 내가 원하는 라인을 얻고 나는 (내가 excluded_lines에 전달할 수없는 것들 arg를 제외 :

나는 내가 좋아하는 일을하는에 자동 스케일 기능을 확인해야합니다. 축으로부터 선을 얻는 함수는 무엇입니까? 나는 그것을 발견 할 수 없었다.

2) 해당 줄에 대한 bbox를 가져오고 autoscale_view()와 비슷한 방법을 사용하십시오. 어떻게하면 줄과 관련된 bbox를 얻을 수 있습니까?

내 1 & 2는 완전히 벗어난 것일 수도 있습니다. 단지 내가 생각했던 접근 방식을 제안하는 것일 수 있습니다.

답변

1
from matplotlib import pyplot as plt 
plt.plot([1,2,3],[3,4,5]) 
plt.plot([2,3,4],[4,9,4]) 
ax = plt.gca() 
l = ax.get_lines()[0] # a line instance 
p = l.get_path() 
p.get_extents() # a bbox instance 
+0

감사합니다. –

관련 문제