i'm trying to plot two figures but it's plotting empty figure.

1 commentaire

Bhaskar R
Bhaskar R le 30 Oct 2019
Actually it is not a problem of empty figures, there are errors. Code is wrong.

Connectez-vous pour commenter.

 Réponse acceptée

Daniel M
Daniel M le 30 Oct 2019
Modifié(e) : Daniel M le 30 Oct 2019

0 votes

I made some adjustments. Let me know if this is close to what you want.
tau = [1.5, 2];
figure
for t = 1:length(tau)
% create new vector tt (don't overwrite t)
tt = -tau(t):0.01:tau(t); % index tau at t
x = @(z) heaviside(z+tau(t)/2)-heaviside(z-tau(t)/2);
% use z for clarity, since the input variable doesn't need to be named t as well
subplot(1,2,t)
grid minor
plot(tt,x(tt)) % evaluate x at tt
end

Plus de réponses (1)

Walter Roberson
Walter Roberson le 30 Oct 2019

0 votes

Change the
plot(t,x(t))
to
plot(t,x(t),'*')
I admit that I am surprised that subplot() did not give you an error about illegal subplot number, as you are constructing t as a vector of numeric values that are seldom positive integers. Notice that your line assigning t= -tau:0.01:tau is overwriting the t of your for t loop...

Community Treasure Hunt

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

Start Hunting!

Translated by