Signal Processing Toolbox | Help Desk |
zplane
Zero-pole plot.
zplane(z,p) zplane(b,a) [hz,hp,ht] = zplane(z,p)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
, respectively, in different colors.
You can override the automatic scaling of zplane
using
axis([xmin xmax ymin ymax])or
set(gca,'ylim',[ymin ymax])or
set(gca,'xlim',[xmin xmax])after calling
zplane
. This is useful in the case where one or a few of the zeros or poles have such a large magnitude that the others are grouped around the origin and are thus hard to distinguish.
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
.
[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 set to the empty matrix []
.
Plot the poles and zeros of a 5th-order Butterworth lowpass digital filter with cutoff frequency of 0.2:
[z,p,k] = butter(5,0.2); zplane(z,p)To generate the same plot with a transfer function representation of the filter:
![]()
[b,a] = butter(5,0.2); % transfer function zplane(b,a)