Why my plot is blank?

3 views (last 30 days)
Nirmith Kumar Mishra
Nirmith Kumar Mishra on 25 Sep 2021
Answered: Image Analyst on 25 Sep 2021
clc
clear all
close all
w0=73000;
S=950;
AR=5.92;
C_D0=0.015;
K=0.08;
rho=8.9068*10^-4;
for V=300:100:1300
CL=(2*w0)/(rho*V^2*S);
CD=C_D0+K*CL^2;
Tr=0.5*rho*V^2*S*CD;
disp([' At free stream velcoity ', num2str(V), ' m/s, CL is ', num2str(CL), ' , CD is ', num2str(CD) ' , Tr is ', num2str(Tr)]);
end
plot(V,Tr)

Accepted Answer

Image Analyst
Image Analyst on 25 Sep 2021
You didn't index V or Tr. Try this:
clc
clear all
close all
w0=73000;
S=950;
AR=5.92;
C_D0=0.015;
K=0.08;
rho=8.9068*10^-4;
allV=300:100:1300
Tr = zeros(1, length(allV));
for k = 1 : length(allV)
V = allV(k);
CL=(2*w0)/(rho*V^2*S);
CD=C_D0+K*CL^2;
Tr(k)=0.5*rho*V^2*S*CD;
fprintf(' At free stream velocity %d m/s, CL is %f, CD is %f, Tr is %f\n', ...
V, CL, CD, Tr(k));
end
plot(allV, Tr, 'b.-', 'LineWidth', 2, 'MarkerSize', 30)
grid on;
xlabel('V', 'FontSize', 15);
ylabel('Tr', 'FontSize', 15);

More Answers (1)

Cris LaPierre
Cris LaPierre on 25 Sep 2021
The most likely reason is that V and Tr are a single number. By default, MATLAB does not plot using markers, so if there is only a single point, you won't see it.
See this answer for how to create a vector using a for loop.

Categories

Find more on MATLAB in Help Center and File Exchange

Products


Release

R2011a

Community Treasure Hunt

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

Start Hunting!