Main Content


Plot Hankel singular values and return plot handle


h = hsvplot(___)


hsvplot(sys) plots the Hankel singular values (HSVs) of the LTI model sys. See balred for details on the meaning and purpose of Hankel singular values. The Hankel singular values for the stable and unstable modes of sys are shown in blue and red, respectively. Reduced-order models of various orders can be obtained by dropping the states associated with the smallest HSVs. hsvplot also shows the maximum approximation error as a function of the approximation order (number of states in reduced-order model).

hsvplot(AX,sys,...) attaches the plot to the axes AX.

hsvplot(...,numOpts,plotOpts) specifies additional options for computing and plotting the results. Use balredOptions to create numOpts and hsvoptions to create plotOpts.

h = hsvplot(___) returns the plot handle h to the Hankel singular value plot. You can use this handle to customize the plot with the getoptions and setoptions commands. See hsvoptions for a list of some available plot options.


collapse all

Use hsvplot to create a Hankel singular-value plot and customized plot properties.

Create an options set for hsvplot that sets the Yscale property and the title font size.

P = hsvoptions;
P.YScale = 'linear'; 
P.Title.FontSize = 14;

Use the options set to generate an HSV plot. Note the linear y-axis scale in the plot.

h = hsvplot(rss(12),P);

hsvplot returns a plot handle. You can use the plot handle to change properties of the existing plot. For example, switch to log scale and turn off the grid.



  • Both balred and hsvplot generate Hankel singular-value plots. hsvplot is useful when you want to customize properties of your plot such as axis limits, scale, and label styles. Use hsvoptions with hsvplot to define properties for your plot. For information on the ways to change properties of your plots, see Ways to Customize Plots.

Version History

Introduced before R2006a