Defining the limits for discrete time sequence on x axis using stem command

2 visualizzazioni (ultimi 30 giorni)
In this sample program, I need to define the x axis as integers only rather than fractions.
x=[-2 1 -1 2]
nx=-1:2
h=[0 1 2]
nh=0:2
subplot(311)
stem(nx,x,'k')
xlabel('n')
ylabel('x(n)')
title('Input sequence x(n)')
subplot(312)
stem(nh,h,'k')
xlabel('n')
ylabel('h(n)')
title('Impulse Response h(n)')
  2 Commenti
altaf ahmed
altaf ahmed il 20 Ott 2019
Question: in the plots, the horizontal axis are needed to be integers only. Somehow they are coming in fractions. Is there a way to define this in stem command or plot command.

Accedi per commentare.

Risposta accettata

Star Strider
Star Strider il 20 Ott 2019
Add these lines to each subplot:
xt = get(gca, 'XTick');
set(gca, 'XTick',min(xt):max(xt))
so the revised code is now:
x=[-2 1 -1 2]
nx=-1:2
h=[0 1 2]
nh=0:2
subplot(311)
stem(nx,x,'k')
xt = get(gca, 'XTick');
set(gca, 'XTick',min(xt):max(xt))
xlabel('n')
ylabel('x(n)')
title('Input sequence x(n)')
subplot(312)
stem(nh,h,'k')
xt = get(gca, 'XTick');
set(gca, 'XTick',min(xt):max(xt))
xlabel('n')
ylabel('h(n)')
title('Impulse Response h(n)')
Note that here, the minimum and maximum x-tick values are integers. If they are not in other plots, you will have to change the added lines appropriately to make them integer values, for example:
set(gca, 'XTick',floor(min(xt)):ceil(max(xt)))
Experiment to get the result you want.

Più risposte (0)

Categorie

Scopri di più su Line Plots in Help Center e File Exchange

Prodotti


Release

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by