2012-10-30 3 views
14

내가 plot(x, sin(x))하려는 대신 라인의 (xi,yi)에서 (x_i+1,y_i+1)에 나는 점 사이 (xi,0)(xi,yi)에 때로는 보간에서 각 지점에 수직선을 원하는 어떤 의미 (예를 들어, 양자화 된 데이터)를하지 않습니다 (그리고 그 수직으로 더 잘 보이 라인없이).matplotlib의 줄기 플롯?

아래 줄거리 그림 (matlab 문서)에서와 비슷하지만 점 사이의 원과 "-"를 끌 수있는 옵션이 있습니다. 불행히도 matplotlib 문서에서 적절한 플로팅 기능을 찾지 못했습니다.

stem plot

답변

16

= 'steps--'이는 linestyle을 사용하려는 생각합니다. 아래에서


the docs에서 예를 찾을 수 있습니다 (물론 한 것하지 import * 실제 코드에서 pylab에서!).


당신이 기준선의 y 위치를 조정하려면

stem plot

#!/usr/bin/env python 
from pylab import * 

x = linspace(0.1, 2*pi, 10) 
markerline, stemlines, baseline = stem(x, cos(x), '-.') 
setp(markerline, 'markerfacecolor', 'b') 
setp(baseline, 'color','r', 'linewidth', 2) 

show() 
, 당신은 bottom 매개 변수를 사용할 수 있습니다. (문서 정보의 비트 그리워.)

(개정판) 예 :

#!/usr/bin/env python 
from pylab import * 

x = linspace(0.1, 2*pi, 10) 
stem(x, cos(x), '-.', bottom=-2) 

show() 

stem plot 2

+0

감사합니다. 이제 파란색 원을 제거하는 방법을 알아야합니다. – arynaq

+1

@ user948652 'markerfmt' 매개 변수를 적절하게 설정하면됩니다. 'markerfmt = '.''. 호출 매개 변수의 문서를 살펴 보겠습니다. 잘 설명되어 있습니다. – moooeeeep

+0

은 음의 무한대에서 줄기를 시작하는 방법이 있습니까? 나는 다음과 같은 것을 원한다 : https://namoseley.files.wordpress.com/2012/09/sin_poly_spectrum_small.png – endolith

0

난 당신뿐만 아니라하기 matplotlib에서 stem plot (일명, 롤리팝 플롯)가

plot(x, sin(x), linestyle='steps--') 
+0

이 수평 단계 플롯에서, .gif 참고 링크 – arynaq

+0

처럼 수직선하지 않는다 내 잘못, 나는 @moooeeeep이 있다고 생각한다. – reptilicus