Ploting a graph with if else statement

1 view (last 30 days)
Ron
Ron on 30 Sep 2018
Commented: jonas on 30 Sep 2018
I am trying to plot this graph
fs=100000000 % samples per second
dt = 1/fs % seconds per sample
StopTime = 5E-6 % seconds
Fc = 5E6; % hertz
for t = (0:dt:StopTime) % seconds
if t<1E-6
y = 2*sin(2*pi*Fc*t)
else
y=0
end
end
plot (t,y) % Plot the signal versus time
The output of y is exactly what I need but I am unable to plot the graph of the y output with respect to time.
Thank you,

Accepted Answer

jonas
jonas on 30 Sep 2018
Edited: jonas on 30 Sep 2018

Try this instead, no for loop needed

fs = 100000000                
dt = 1/fs                  
StopTime = 5E-6             
Fc = 5E6;                   
t = 0:dt:StopTime
y = nan(size(t))
y(t<1E-6) = 2*sin(2*pi*Fc*t(t<1E-6))
y(~(t<1E-6)) = 0
plot(t,y)              
  2 Comments
Ron
Ron on 30 Sep 2018
Thank You this works!!
jonas
jonas on 30 Sep 2018
Happy to help! Don't forget to accept the answer please!

Sign in to comment.

More Answers (0)

Categories

Find more on Line 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!