while plotting the graph ,it appears blank. How to solve this problem?

My code is as below
f=[1,2,3,4,5,6,7,8,9,10];
l=length(f);
for i=1:l
t=1/0.4521;
z=3.68*10^(-7)*(t)^(1/2)*(2*3.14*f(i))^0.5;
plot(f(i),z);
end

 Accepted Answer

Try saving z as a vector and plotting it outside the loop..
f=[1,2,3,4,5,6,7,8,9,10];
t=1/0.4521;
l=length(f);
for i=1:l
z(i)=3.68*10^(-7)*(t)^(1/2)*(2*3.14*f(i))^0.5;
end
plot(f,z);

4 Comments

Though I am puzzled as to why "t" was not set _before_ the loop.
true 't' can be set before starting the loop. did not pay attention to it.. Thanks.. :)
Hi Thomas, thanks for solving my issue
i am getting graph properly, my code now looks as below
{f=1:100;
t=1/0.4521;
for i=1:100
z(i)=(3.68*10^(-7)*(t)^(1/2)*(2*3.14*f(i))^0.5);
end
loglog(f,z)}
You should be able to simplify the code by eliminating the loop and using
z = 3.68E-7 * sqrt(t) * sqrt(2 * pi) * sqrt(f);
or if you want to reduce sqrt() calls,
z = 3.68E-7 * sqrt(2 * pi * t * f);

Sign in to comment.

More Answers (0)

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!