How to plot from certain range of data?
조회 수: 15 (최근 30일)
이전 댓글 표시
Hi everyone,
Actually I want find the stepinfo value but I have huge amount of data (many square waves of data). As far as I know stepinfo can determine if the signal in one square wave. Therefore I want to plot the data in certain range. The data (x and y) are in same folder of the workspace. What I did is below but did not work.
1.
>> x=Scope1(:,1);
>> x=[10:0.02:20];
>> y=Scope1(:,3);
>> plot(x,y)
Error using plot.
Vectors must be the same lengths.
2.
>> x=Scope1(:,1);
>> xlim=([10 20]);
>> y=Scope1(:,3);
>> plot(x,y)
Number 2 produce no error but it plots whole data (xlim is not functioning).
I also tried with fplot (function, xlim ) but it didn't work (it plot y=x).
>> x=Scope1(:,1);
>> y=Scope1(:,3);
>> fplot('y' , [10 20])
Can anybody help me how to plot?
Thank you in advance!
arys
답변 (2개)
Image Analyst
2014년 12월 16일
First of all, what is Scope? Is it a 2D array of square wave data where each column is one square wave?
Next, what is stepinfo? And how is it able to determine anything ? Did you write a function called stepinfo?
Then, why do you set x = a column of Scope then overwrite it with a linear vector? So of course x is a different length than y since they are not both columns of Scope anymore.
Why do you want to plot y vs. x anyway? If they're both square waves, what sense would that make?
Then, to set the axes limits you cannot do this
xlim=([10 20]);
You must do it this way:
xlim([10 20]); % No equal sign.
댓글 수: 2
Sudharsana Iyengar
2014년 12월 17일
Did you try the following
x=Scope1(:,1);
y=Scope1(:,3);
plot(x,y)
xlim([10 20])
More easier option would be to use
plot(Scope(:,1),Scope(:,2))
xlim([10 20])
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Annotations에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!