Why is my second plot only coming up when I run the program?
3 次查看(过去 30 天)
显示 更早的评论
I have a function file and script file that both work well together, but out of the two plots I am trying to show when I run the program, only the second one shows up. Can anyone tell me why this is happening?
My function file:
function ff = fCW()
F = @(f,Re) 2*log10(Re*sqrt(f))-0.8-(1/sqrt(f));
Re = linspace(1e4,1e7,121);
ff = zeros(size(Re));
for k = 1:length(Re)
ff(k) = fzero( @(f) F(f,Re(k)), 0.05 );
end
end
My script file:
FCW = fCW();
Re1=linspace(1e+4,1e+7,121); NRe1=length(Re1);
fB = zeros(size(Re1)); fSJ = fB;
for i=1:NRe1
fSJ(i)=0.25/(log10(5.74/Re1(i)^0.9))^2;
fB(i)=0.3164/Re1(i)^0.25;
end
plot(Re1, FCW, Re1, fSJ, Re1, fB)
xlabel('Reynolds Number'); ylabel('Dimensionless Friction Factor');
title('Three Friction Factor Correlations for Smooth Pipes')
legend('Colebrook-White Correlation', 'Swamee-Jain Correlation',...
'Blasius Correlation')
plot(fB,FCW,fSJ,FCW)
xlabel('Dimensionless Friction Factor');
ylabel('Dimensionless Friction Factor');
legend('Ratio of Blasius to Colebrook-White Correlation',...
'Ratio of Swamee-Jain to Colebrook-White Correlation')
0 个评论
采纳的回答
Star Strider
2014-11-8
MATLAB will plot in the same open axes object unless it to create a new one.
Do this:
figure(1)
plot(Re1, FCW, Re1, fSJ, Re1, fB)
... CODE ...
figure(2)
plot(fB,FCW,fSJ,FCW)
... CODE ...
and they should both be visible (although you will probably have to toggle between them or offset them from one another to see them both).
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Distribution Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!