You are here : matlabSignal Processingzplane

zplane() - Signal Processing

This function displays the poles and zeros of discrete-time
systems. zplane(z,p) plots the zeros
specified in column vector z and the poles specified
in column vector p in the current figure window.
The symbol 'o' represents a zero and the symbol 'x' represents
a pole. The plot includes the unit circle for reference. If z and p are
arrays, zplane plots the poles and zeros in the
columns of z and p in different
colors.zplane(b,a) where b and a are
row vectors, first uses roots to
find the zeros and poles of the transfer function represented by numerator
coefficients b and denominator coefficients a.
The transfer function is defined in terms of z–1: H(z)=B(z)A(z)=b(1)+b(2)z−1+⋯+b(n+1)z−na(1)+a(2)z−1+⋯+a(m+1)z−mzplane(d) finds the zeros
and poles of the transfer function represented by the digital filter, d.
Use designfilt to generate d based
on frequency-response specifications. The pole-zero plot is displayed
in fvtool.[hz,hp,ht] = zplane(z,p) returns
vectors of handles to the zero lines, hz, and the
pole lines, hp. ht is a vector
of handles to the axes/unit circle line and to text objects, which
are present when there are multiple zeros or poles. If there are no
zeros or no poles, hz or hp is
the empty matrix [].


zplane(z,p)zplane(b,a)zplane(d)[hz,hp,ht] = zplane(z,p)


Poles and Zeros of an Elliptic Lowpass FilterOpen This Example
For data sampled at 1000 Hz, plot the poles and zeros of a 4th-order elliptic lowpass digital filter with cutoff frequency 200 Hz, 3 dB of ripple in the passband, and 30 dB of attenuation in the stopband.
[z,p,k] = ellip(4,3,30,200/500);
title('4th-Order Elliptic Lowpass Digital Filter')

Create the same filter using designfilt. Use fvtool to plot its poles and zeros.d = designfilt('lowpassiir','FilterOrder',4,'PassbandFrequency',200, ...
               'PassbandRipple',3,'StopbandAttenuation',30, ...

Related ExamplesSpeaker Crossover Filters

Output / Return Value


Alternatives / See Also