2012-02-15 4 views
0

내 작업은 완전히 임의의 신호를 플롯하는 것입니다.MATLAB : 플롯 임의 신호

이 나의 발전은 지금까지입니다 :

sig_length = 200; % this task is part of a three plot figure so ignore the subplot part 
subplot(2,2,1) 
hold on 
sig = rand(1,sig_length); 
plot(1:sig_length,sig) 
axis tight 
title('Signal') 

내 문제는 내가 5 -5는 어떻게 그것을 달성 할 수있는 y 축 간격을 원하는입니까? 미리 감사드립니다. axis([xmin xmax ymin ymax]) 이상의 문서, 축 세트를 사용하기 위해

+0

당신이 쳤 하시겠습니까 사용 돔 신호를 -5에서 5 사이로 이동 시키거나 실제 축을 -5에서 5로 표시 하시겠습니까? – Phonon

+0

글쎄 축 ([0 200 -5 5]) 을 작성하여 축을 -5에서 5로 표시하도록 설정했지만 신호는 여전히 0에서 1로 이동합니다. 그래, 신호가 값 축에 표시 :/ –

+0

완전 무작위 란 무엇입니까? 달성하고자하는 배포판은 무엇입니까? 제복? 표준? –

답변

2
  1. 가 열린 구간에서 균일하게 분포하여, 약 0을 중심으로하는 신호를 생성하기 위해 http://www.mathworks.com/help/techdoc/ref/axis.html

  2. 를 찾을 수 -5 5를 사용하려면 먼저 rand를 10 배로 조정해야합니다 (rand는 열린 간격 (0,1)에 값을 생성하고 범위 (-5,5)에 값이 필요함), 표시된대로이 값을 5만큼 위로 이동해야합니다 아래 :

    shiftedCenteredSig = (10 * rand (1, sig_length)) - 5 %에서 5로 스케일 및 이동

이 패턴/레시피가 문서의 예에서 알 수있다 : http://www.mathworks.com/help/techdoc/ref/rand.html :

:

예 1은 에 간격 [A, B]를 균일 분포 값을 생성

r = a + (ba). * rand (100,1);

마지막 코드

아래 볼 수 있습니다 :

sig_length = 200; % this task is part of a three plot figure so ignore the subplot part 
subplot(2,2,1) 
hold on 
%sig = rand(1,sig_length); %note this is a uniform distribution on interval 0,1 
sig = (10*rand(1,sig_length)) - 5 %scaled and shifted to be from -5 to 5 
plot(1:sig_length,sig) 
axis([1,sig_length,-5,5]) 
title('Signal') 
+0

고마워요! 그것은 많은 도움이되었습니다! –

3

당신이 당신의 신호가 -5 5로 이동하려는 경우, 일반적으로

sig = -5 + 10*rand(1,sig_length); 

을, 임의의 신호가 이동하기 ab 사이

a + (b-a)*rand(1,length);