generates a Nichols plot of the transfer function for the system lsys.


plots for the frequency range ωmin to ωmax.


plots expr using the variable ω.

Details and Options


open allclose all

Basic Examples  (4)

Nichols plot of a transfer-function model:

Specify the frequency range:

Nichols plot of a discrete-time system:

Use legends for multiple systems:

Scope  (8)

The Nichols plot of a continuous-time system:

The Nichols plot of a discrete-time system:

The system can also be specified as an expression:

A discrete-time system with sampling period 1, specified as an expression:

A system with a time delay:

Specify the frequency range:

The Nichols plot of a state-space model:

A system specified as a sinusoidal transfer function:

Generalizations & Extensions  (1)

NicholsPlot[TransferFunctionModel[g,var]] is equivalent to NicholsPlot[g]:

Options  (28)

AspectRatio  (1)

Specify the aspect ratio:

ColorFunction  (3)

Color the curve by scaled frequency values:

Use a named color gradient:

Use red when the sensitivity function is less than 1, and black otherwise:

ColorFunctionScaling  (1)

Scale the frequency to be between 0 and 1:

ColorFunctionScaling->False uses absolute values:

Specify the scaling manually:

CoordinatesToolOptions  (1)

Display the tooltip coordinates in radians and absolute magnitude:

Exclusions  (1)

By default the singular frequencies are excluded:

Mesh  (4)

Show equally spaced frequency locations:

Show the coordinates at 1 radian per time unit:

Show the coordinates at several frequencies:

Specify the graphics directives:

MeshFunctions  (1)

By default the mesh is located at evenly spaced frequencies:

Specify a mesh with evenly spaced log-10 frequency values:

MeshStyle  (1)

Specify the mesh style:

NicholsGridLines  (2)

Use automatically chosen values of closed-loop magnitude and phase:

Draw specific contours:

PhaseRange  (1)

The phase is typically plotted as a continuous function:

Specify a phase range:

PlotLegends  (4)

Use automatic legends for multiple systems:

Use named legends:

Use LineLegend to add the label for overall legend:

Place the legend above the plot:

PlotPoints  (1)

Use more initial points to get a smoother curve:

PlotTheme  (2)

Use a theme with a frame and grid lines:

Change the style of the grid lines:

ScalingFunctions  (1)

Show the phase in radians:

Show absolute values of magnitude:

StabilityMargins  (3)

Show stability margins:

Show only the gain margin:

Only margins and crossover frequencies with numerical values are shown:

StabilityMarginsStyle  (1)

Specify stability margins style:

Wolfram Research (2010), NicholsPlot, Wolfram Language function, (updated 2014).


Wolfram Research (2010), NicholsPlot, Wolfram Language function, (updated 2014).


Wolfram Language. 2010. "NicholsPlot." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2014.


Wolfram Language. (2010). NicholsPlot. Wolfram Language & System Documentation Center. Retrieved from


@misc{reference.wolfram_2024_nicholsplot, author="Wolfram Research", title="{NicholsPlot}", year="2014", howpublished="\url{}", note=[Accessed: 18-June-2024 ]}


@online{reference.wolfram_2024_nicholsplot, organization={Wolfram Research}, title={NicholsPlot}, year={2014}, url={}, note=[Accessed: 18-June-2024 ]}