This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.


Plot multiple frequency response objects and doubles on same graph


H = uplot(G1)
H = uplot(G1,G2)
H = uplot(G1,Xdata,Ydata)
H = uplot(G1,Xdata,Ydata,...)
H = uplot(G1,linetype)
H = uplot(G1,linetype,G2,...)
H = uplot(G1,linetype,Xdata,Ydata,linetype)


uplot plots double and frd objects. The syntax is the same as the MATLAB® plot command except that all data is contained in frd objects, and the axes are specified by type.

The (optional) type argument must be one of




Data versus independent variable (default)


Magnitude versus independent variable


log(magnitude) versus independent variable


Phase versus independent variable


Magnitude versus log(independent variable)


Data versus log(independent variable)


Magnitude versus log(independent variable)


log(magnitude) versus log(independent variable)


Phase versus log(independent variable)


Real versus imaginary (parametrize by independent variable)


Real versus imaginary (parametrize by independent variable)


Nicholas plot


Bode magnitude and phase plot

The remaining arguments of uplot take the same form as the MATLAB plot command. Line types (for example,'+', 'g-.', or '*r') can be optionally specified after any frequency response argument.

There is a subtle distinction between constants and frd objects with only one independent variable. A constant is treated as such across all frequencies, and consequently shows up as a line on any graph with the independent variable as an axis. A frd object with only one frequency point always shows up as a point. You might need to specify one of the more obvious point types in order to see it (e.g., '+', 'x', etc.).


collapse all

Create two SISO second-order systems, and calculate their frequency responses over different frequency ranges.

a1 = [-1,1;-1,-0.5];
b1 = [0;2]; c1 = [1,0]; d1 = 0; 
sys1 = ss(a1,b1,c1,d1); 
a2 = [-.1,1;-1,-0.05]; 
b2 = [1;1]; c2 = [-0.5,0]; d2 = 0.1; 
sys2 = ss(a2,b2,c2,d2); 
omega = logspace(-2,2,100); 
sys1g = frd(sys1,omega); 
omega2 = [ [0.05:0.1:1.5] [1.6:.5:20] [0.9:0.01:1.1] ]; 
omega2 = sort(omega2); 
sys2g = frd(sys2,omega2);

Create an frd object with a single frequency.

sys3 = rss(1,1,1);
rspot = frd(sys3,2);

The following plot uses the plot_type specification 'liv,lm'.

xlabel('log independent variable') 
ylabel('log magnitude') 
title('axis specification: liv,lm')

Introduced before R2006a

Was this topic helpful?