MATLAB Answers

Translated by

このページのコンテンツは英語から自動翻訳されています。自動翻訳をオフにする場合は「<a class="turn_off_mt" href="#">ここ</a>」をクリックしてください。

0

Plotting data from for loop

Alec Carruthers さんによって質問されました 2017 年 4 月 4 日
最新アクティビティ KSSV
さんによって コメントされました 2017 年 4 月 5 日
Here is my code:
T=290;
R=287;
G=1.4;
Cv= R/(G-1);
e=Cv*T;
V= (0:1:1000);
Ke= .5*(V.^2);
for i = 1:1:length(V)
Ratio(i)= Ke(i)/e;
plot(Ratio);
hold on
end
Basically I want to plot "Ratio" with all of the stored Ke values on the graph. When I run the code, it gives me a thousand sets of a thousand entries instead of just 1 set with a thousand entries. All of the sets are the same, I just don't know why it is producing that many sets.

  0 件のコメント

サインイン to comment.

1 件の回答

KSSV
回答者: KSSV
2017 年 4 月 4 日

It is because, you are plotting Ratio inside the loop and you have not mentioned the X data. You can plot Ratio outside the loop.
T=290;
R=287;
G=1.4;
Cv= R/(G-1);
e=Cv*T;
V= (0:1:1000);
Ke= .5*(V.^2);
Ratio = zeros(size(V)) ;
for i = 1:1:length(V)
Ratio(i)= Ke(i)/e;
end
plot(Ratio);
It can be vectorised without loop as below:
% Vector
Ratio = Ke/e ;

  2 件のコメント

Alec Carruthers 2017 年 4 月 4 日
Thank you for the help. Your code gives me the same data, but it is only one set instead of a thousand.
KSSV
2017 年 4 月 5 日
How it can be thousand?

サインイン to comment.



Translated by