2012-03-28 2 views
13

나는/pylab을하기 matplotlib하는 MATLAB에서 스크립트를 플로팅 이미지를 변환해야하고, 나는 아래의 MATLAB 이미지와 동일한 효과를 달성하기 위해 노력하고있어 :matplotlib 플롯이 축을 벗어나게하려면 어떻게해야합니까?

image generated using matlab

당신이 볼 수 있듯이, Z 순서를 플롯의 높이가 그리드의 z 차수보다 높은 것처럼 보이므로 마커가 축에 의해 숨겨지지 않습니다. 그러나, 나는 내하기 matplotlib 이미지와 동일한 기능을 수행 할 수있는 방법을 알아낼 수 없습니다 :

eimage generated with matplotlib

는 Y의 한계를 증가 할 필요없이 동일한 디스플레이를 얻을 수 있습니다 만약 내가 궁금하네요 중심선. 높은 z 순서 전경에 더 존재하는 그래프 요소에 이른다고 http://matplotlib.sourceforge.net/examples/pylab_examples/zorder_demo.html
참고

+0

난 당신이 MATLAB 동작을 선호하는 이유가 있지만 이럴 축 외부 그리기 기능보다 버그의 더 확신합니다. – joaquin

답변

30

마커가 축 너머에 표시되도록하려면 자르기를 끌 수 있습니다. 이것은 plot 명령 clip_on=False의 키워드 인수를 사용하여 수행 할 수 있습니다. 예를 들어

:

import matplotlib.pyplot as plt 
plt.plot(range(5), range(5), 'ro', markersize=20, clip_on=False, zorder=100) 
plt.show() 

enter image description here

+0

+1 예! 나는 이것이 OP가 찾고 있던 것이 분명하다는 것을 확신하지만, 그것은 나의 (표준 이하의) 대답에 대한 그의 의견이 올 때까지 적어도 분명하지 않다. 잘하면 OP가 이것을 받아 들일 것입니다. 게시 해 주셔서 감사합니다. – bernie

+0

감사합니다 .SOOOOO MUCH !!!!! 이것은 내가 필요한 것입니다! – nay

+0

좋습니다! 내가 필요한 것. – bretcj7

1

이것은 zorder kwarg를 사용시키는 방법의 예이다.

두 번째 질문에 대한

Figure 클래스의 인스턴스에 figsize kwarg를 보라 : http://matplotlib.sourceforge.net/api/figure_api.html?highlight=figsize#matplotlib.figure.Figure

이 문제가 발생하는 경우, 코드의 일부를 게시하고 우리는 더 -을 줄 수있을 드리겠습니다 자세한 권장 사항. 행운을 빌어 요.

+0

고맙습니다. 작성한 두 개의 링크를 살펴 보겠습니다. 코드의 경우 matplotlib의 기본 동작은 점 자체 (예 : 0.2; 0)가 표시되면 주변의 표식이 완전히 보이지 않으면 문제가되지 않는다고 생각하는 것입니다. 그것은 내가 변경하려고하는 행동입니다. – nay

+0

@nay : tom10이 질문에 대한 답을 갖고있는 것처럼 보입니다. 해피 코딩! – bernie

+0

예! 도와 주셔서 감사합니다 많이 =) – nay

0

선을 차례로 플롯하려면 플롯팅 호출 순서를 변경하면 z 순서가 수정됩니다.

+0

답변 주셔서 감사합니다, 실제로 내가 뭘하려는거야 플롯의 x 순서를 그리드 자체의 높은 순서로 만드는 것입니다, 그래서 마커 (예 : 0.2; 0)) 완전히 MATLAB 이미지처럼 보이게됩니다. – nay

관련 문제