Why is my plot not showing anything?

2 views (last 30 days)
Aarya O on 17 Jun 2022
Commented: Walter Roberson on 18 Jun 2022
I double checked the equation with a graphing calculator to verify that the plot window is appropriate. There are no syntax error messages, and to my knowledge, there is nothing glaringly incorrect about the syntax.
My code is pasted below:
x = linspace(0,10,1); %Assume the time is from 0 to 10 seconds
%Step response of a 1st-order ODE
% For the 1st order relationship, assume that:
%y_0 = 1
%Tau = 5
y_0 = 10;
Tau = 3;
y = y_0 * (1 - exp((-1*x)/Tau));
figure(1)
plot(x,y)
grid on
xlim([0 10])
ylim([0 10])
Thank you for your time, and I appreciate anyone who can point out what I'm doing wrong. I'm new to MATLAB so I apologize if the mistake is obvious.
Walter Roberson on 17 Jun 2022
x = linspace(0,10,1)
The ,1 asks that the vector be length 1

Geoff Hayes on 17 Jun 2022
@Aarya O - consider this line
x = linspace(0,10,1);
where you say that you want 1 linearly spaced item between 0 and 10. So this means that x is just 10...and so you are plotting one point only. Try changing this to
x = linspace(0,10,100);
and you should see something different.
Walter Roberson on 18 Jun 2022
First is start, second is end, third is total number of entries. First and last appear exactly unless the count is 1.
If you want interval then 0:1:10 which is first:increment:not_to_exceed . The end point will not necessarily appear. 1:1.5:3.5 would be 1, 1+1.5 and stop because 1+1.5+1.5 = 4 exceeds the upper limit of 3.5

Categories

Find more on Annotations in Help Center and File Exchange

R2022a

Community Treasure Hunt

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

Start Hunting!