How to plot all results from a for loop?

Hi all, I have created a function called maxrange and have created a for loop for this and am trying to plot the results. If I run the script it displays all the values for y that I want but still only plots the final value.
for m0=[73810:196.9:93500]
y=maxrange(m0)
end
x=linspace(10,19700,101)
plot(y,x)

 採用された回答

Azzi Abdelmalek
Azzi Abdelmalek 2014 年 12 月 4 日
編集済み: Azzi Abdelmalek 2014 年 12 月 4 日

0 投票

k=0;
t=73810:196.9:93500
y=zeros(size(t)) % pre-allocate
for m0=t
k=k+1;
y(k)=maxrange(m0)
end

3 件のコメント

Jack
Jack 2014 年 12 月 4 日
Hi, this seems to be working although could you briefly explain the line
y=zeros(sixe(t)) %pre-allocate
As I am unsure of what this is actually doing or what I should be doing.
Thanks a lot.
Azzi Abdelmalek
Azzi Abdelmalek 2014 年 12 月 4 日
If the vector t=[1 2 3], the vector y should be the same size
y=zeros(size(t))
the result is
y=[0 0 0]
pre-allocating allows to make your loop faster, especially when the size of y is big
Jack
Jack 2014 年 12 月 4 日
I see, Thanks very much.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeLoops and Conditional Statements についてさらに検索

質問済み:

2014 年 12 月 4 日

コメント済み:

2014 年 12 月 4 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by