主要内容

setoption

设置绘图选项句柄或绘图选项属性

描述

你可以用setoption设置绘图手柄选项或属性列表,并使用它来自定义绘图,例如修改轴标签、限制和单位。有关每种绘图类型可用的属性和值的列表,请参见属性和值参考(控制系统工具箱)。使用plot句柄自定义现有的plot:

  1. 获取情节句柄

  2. 使用getoptions获取选项集

  3. 使用以下命令更新情节setoption修改所需选项

有关更多信息,请参见从命令行自定义响应图(控制系统工具箱)

例子

setoption (hp使用情节句柄设置响应情节的首选项h情节手柄和情节选项手柄p它包含有关情节选项的信息。

例子

setoption (h,‘property1’,‘value1’,……,“propertyN”、“家”)将值赋给属性值对,而不是使用绘图选项句柄p。有关每种绘图类型可用的属性和值的列表,请参见属性和值参考(控制系统工具箱)

setoption (hp,‘property1’,‘value1’,……,“propertyN”、“家”)首先使用plot选项句柄分配属性p,然后覆盖由指定的属性-值对控制的任何属性。有关每种绘图类型可用的属性和值的列表,请参见属性和值参考(控制系统工具箱)

例子

全部折叠

对于本例,考虑一个具有3个输入、3个输出和3个状态的MIMO状态空间模型。用红色的网格线创建一个脉冲图。

创建MIMO状态空间模型sys_mimo

J = [8 -3 -3;-3 8 -3;-3 -3 8];F = 0.2*眼(3);A = -j \ f;B = inv(J);C =眼(3);D = 0;sys_mimo = s(A,B,C,D);大小(sys_mimo)
具有3个输出、3个输入和3个状态的状态空间模型。

用情节手柄创建一个冲动情节h和使用getoptions获取可用选项的列表。

H = impulseplot(sys_mimo)

图中包含9个轴对象。标题为From: In(1)的轴对象1包含类型为line的对象。该对象表示sys\_mimo。坐标轴对象2包含一个line类型的对象。该对象表示sys\_mimo。axis对象3包含一个line类型的对象。该对象表示sys\_mimo。标题为From: In(2)的轴对象4包含一个类型为line的对象。该对象表示sys\_mimo。坐标轴对象5包含一个line类型的对象。 This object represents sys\_mimo. Axes object 6 contains an object of type line. This object represents sys\_mimo. Axes object 7 with title From: In(3) contains an object of type line. This object represents sys\_mimo. Axes object 8 contains an object of type line. This object represents sys\_mimo. Axes object 9 contains an object of type line. This object represents sys\_mimo.

H = resppack.timeplot
P = getopoptions (h)
p = Normalize: 'off' setttimethreshold: 0.0200 RiseTimeLimits: [0.1000 0.9000] TimeUnits: 'seconds' confinenceregionnumbersd: 1 IOGrouping: 'none' InputLabels: [1x1 struct] OutputLabels: [1x1 struct] InputVisible: {3x1 cell} OutputVisible: {3x1 cell} Title: [1x1 struct] XLabel: [1x1 struct] YLabel: [1x1 struct] TickLabel: [1x1 struct] Grid: 'off' GridColor: [0.1500 0.1500 0.1500] XLim: {3x1 cell} YLim: {3x1 cell} XLimMode: {3x1 cell} YLimMode: {3x1 cell}

使用setoption用需要的定制来更新情节。

setoption (h,“网格”“上”“GridColor”,[1 0 0]);

图中包含9个轴对象。标题为From: In(1)的轴对象1包含类型为line的对象。该对象表示sys\_mimo。坐标轴对象2包含一个line类型的对象。该对象表示sys\_mimo。axis对象3包含一个line类型的对象。该对象表示sys\_mimo。标题为From: In(2)的轴对象4包含一个类型为line的对象。该对象表示sys\_mimo。坐标轴对象5包含一个line类型的对象。 This object represents sys\_mimo. Axes object 6 contains an object of type line. This object represents sys\_mimo. Axes object 7 with title From: In(3) contains an object of type line. This object represents sys\_mimo. Axes object 8 contains an object of type line. This object represents sys\_mimo. Axes object 9 contains an object of type line. This object represents sys\_mimo.

当你打电话时,脉冲图会自动更新setoption。对于MIMO模型,impulseplot生成一个网格图,每个图显示一个I/O对的脉冲响应。

对于本例,考虑一个具有3个输入、3个输出和3个状态的MIMO状态空间模型。创建一个线性频率标度的波德图,指定频率单位为Hz,并打开网格。

创建MIMO状态空间模型sys_mimo

J = [8 -3 -3;-3 8 -3;-3 -3 8];F = 0.2*眼(3);A = -j \ f;B = inv(J);C =眼(3);D = 0;sys_mimo = s(A,B,C,D);大小(sys_mimo)
具有3个输出、3个输入和3个状态的状态空间模型。

用情节句柄创建一个波德情节h和使用getoptions获取可用选项的列表。

H = bodeploy (sys_mimo);P = getopoptions (h)
p = FreqUnits: 'rad/s' FreqScale: 'log' MagUnits: 'dB' MagScale: 'linear' MagVisible: 'on' MagLowerLimMode: 'auto' PhaseUnits: 'deg' phasevvisible: 'on' phasewrap: 'off' PhaseMatchingValue: 0 PhaseWrappingBranch: -180 IOGrouping: 'none' InputLabels: [1x1 struct] OutputLabels: [1x1 struct] InputVisible: {3x1 cell} OutputVisible: {3x1 cell} Title: [1x1 struct] XLabel: [1x1 struct] YLabel: [1x1 struct][1x1 struct] TickLabel: [1x1 struct] Grid: 'off' GridColor: [0.1500 0.1500 0.1500] XLim: {3x1 cell} YLim: {6x1 cell} XLimMode: {3x1 cell} YLimMode: {6x1 cell}

使用setoption用需要的定制来更新情节。

setoption (h,“FreqScale”“线性”“FreqUnits”“赫兹”“网格”“上”);

图中包含18个轴对象。标题为From: In(1)的轴对象1包含类型为line的对象。该对象表示sys\_mimo。坐标轴对象2包含一个line类型的对象。该对象表示sys\_mimo。axis对象3包含一个line类型的对象。该对象表示sys\_mimo。axis对象4包含一个line类型的对象。该对象表示sys\_mimo。坐标轴对象5包含一个line类型的对象。 This object represents sys\_mimo. Axes object 6 contains an object of type line. This object represents sys\_mimo. Axes object 7 with title From: In(2) contains an object of type line. This object represents sys\_mimo. Axes object 8 contains an object of type line. This object represents sys\_mimo. Axes object 9 contains an object of type line. This object represents sys\_mimo. Axes object 10 contains an object of type line. This object represents sys\_mimo. Axes object 11 contains an object of type line. This object represents sys\_mimo. Axes object 12 contains an object of type line. This object represents sys\_mimo. Axes object 13 with title From: In(3) contains an object of type line. This object represents sys\_mimo. Axes object 14 contains an object of type line. This object represents sys\_mimo. Axes object 15 contains an object of type line. This object represents sys\_mimo. Axes object 16 contains an object of type line. This object represents sys\_mimo. Axes object 17 contains an object of type line. This object represents sys\_mimo. Axes object 18 contains an object of type line. This object represents sys\_mimo.

当你调用时,波德图会自动更新setoption。对于MIMO模型,bodeplot生成一组波德图,每个波德图显示一个I/O对的频率响应。

创建如下连续时间传递函数:

H 年代 1 年代 + 1

= tf(1,[11]);

用情节句柄创建一个波德情节h

H = bodeploy (sys);

图中包含2个轴对象。坐标轴对象1包含一个line类型的对象。该节点表示系统。坐标轴对象2包含一个line类型的对象。该节点表示系统。

创建一个情节选项句柄p

P = getopoptions (h);

将频率单位改为赫兹

p.FreqUnits =“赫兹”

将绘图选项应用于Bode绘图。

setoption (h p);

图中包含2个轴对象。坐标轴对象1包含一个line类型的对象。该节点表示系统。坐标轴对象2包含一个line类型的对象。该节点表示系统。

另外,使用setoption (h,“FrequencyUnits”、“赫兹”)

输入参数

全部折叠

绘图句柄,指定为绘图句柄对象。例如,h是一个mpzplot对象用于零极或I/O零极图。

绘图选项句柄,指定为绘图选项句柄对象。例如,p是一个PZMapOptions对象用于零极或I/O零极图。

有两种方法可以创建情节选项句柄:

  • 使用getoptions,它接受一个绘图句柄并返回一个绘图选项句柄。

    P = getopoptions (h)
  • 使用以下命令之一创建默认的绘图选项句柄:

    例如,

    P = bodeoptions

    返回Bode plot的plot选项句柄。

另请参阅

主题

在R2012a中引入