I have a question about plot and for loop
信息
此问题已关闭。 请重新打开它进行编辑或回答。
显示 更早的评论
Here is my code:
Ca0 = 2;
k = 0.5;
L = input('What is length of the reactor in ft? ');
for La=1:L+1
Ca(La) = Ca0*exp(-3*k*(La));
end
Ca1 = Ca0*exp(-3*k*L);
disp('The concentration of the reactor at this length in M')
disp(Ca1)
figure(1);
La = 0:L;
plot(La,Ca);
xlabel('L');
ylabel('Ca');
title('Plot of L vs Ca');
When I tried to run the command, matlab said that "Error using plot Vectors must be the same lengths.". How can I deal with that?
0 个评论
回答(3 个)
Walter Roberson
2016-5-6
0 个投票
At the end of the "for" loop over variable La, the variable La is left set to the last value it had, not to the entire list of values it had.
0 个评论
Image Analyst
2016-5-6
Your Ca was not calculated with an La of 0, so don't use it - it's deceptive. Use
La = 1 : (L + 1);
plot(La, Ca);
This will also ensure that La and Ca have the same number of elements.
0 个评论
I only get same error message when introducing negative lengths.
If I introduce 10ft or 100ft your script does not return any error.
0 个评论
此问题已关闭。
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!