包:matlab.graphics.chartcontainer
用于开发图表对象的基类
matlab.graphics.chartcontainer.ChartContainer
是一个用于定义自己的图表对象类的类。定义此基类的子类时,可以使用ChartContainer
属性和方法来构建图表对象。在类定义文件的第一行指定此语法,以直接继承ChartContainer
类,MyChart
是对象的名称:
classdef MyChart < matlab.graphics.chartcontainer.ChartContainer
的matlab.graphics.chartcontainer.ChartContainer
类是一个处理
类。
InnerPosition
- - - - - -图表大小和位置,不包括利润率[左底宽高]
图表的大小和位置,不包括用于装饰的边距,如轴标和勾号。将此属性指定为形式向量[左底宽高]
.对象指定的单位为值单位
财产。
左
—父容器的左边缘到不包括页边距的图表的左内边缘的距离。通常,父容器是图形、面板或选项卡。
底
—父容器的底边到图表(不包括页边)的内底边的距离。
宽度
-图表的宽度,不包括页边距。
高度
-图表的高度,不包括页边距。
请注意
当图表的父类是TiledChartLayout
.
GetAccess |
公共
|
SetAccess |
公共
|
依赖 |
真正的
|
NonCopyable |
真正的
|
OuterPosition
- - - - - -图表大小和位置,包括页边距[左底宽高]
图表大小和位置,包括用于装饰的边距,如轴标签和勾号。将此属性指定为形式向量[左底宽高]
.对象指定的单位为值单位
财产。
左
—父容器的左边缘到包含页边距的图表的左外边缘的距离。通常,父容器是图形、面板或选项卡。
底
—父容器的底边到包含页边的图表的外底边的距离。
宽度
-图表宽度,包括页边距。
高度
-图表的高度,包括页边距。
请注意
当图表的父类是TiledChartLayout
.
GetAccess |
公共
|
SetAccess |
公共
|
依赖 |
真正的
|
NonCopyable |
真正的
|
位置
- - - - - -图表大小和位置,不包括利润率[左底宽高]
图表的大小和位置,不包括用于装饰的边距,如轴标和勾号。将此属性指定为形式向量[左底宽高]
.这个性质等价于InnerPosition
财产。
请注意
当图表的父类是TiledChartLayout
.
GetAccess |
公共
|
SetAccess |
公共
|
依赖 |
真正的
|
NonCopyable |
真正的
|
PositionConstraint
- - - - - -保持常数的位置“outerposition”
|“innerposition”
Position属性在添加、删除或更改装饰时保持常量,指定为以下值之一:
“outerposition”
- - -OuterPosition
属性在添加、删除或更改装饰(如标题或轴标签)时保持不变。如果需要任何位置调整,MATLAB®调整InnerPosition
财产。
“innerposition”
- - -InnerPosition
属性在添加、删除或更改装饰(如标题或轴标签)时保持不变。如果需要任何位置调整,MATLAB调整OuterPosition
财产。
请注意
当父容器为。时,设置此属性无效TiledChartLayout
.
GetAccess |
公共
|
SetAccess |
公共
|
依赖 |
真正的
|
NonCopyable |
真正的
|
单位
- - - - - -位置单位“归一化”
(默认)|“英寸”
|“厘米”
|“角色”
|“点”
|“像素”
定位单元,指定为下表中的值。若要以特定单位更改图表的位置,请设置单位
属性,然后指定位置
财产。如果指定单位
和位置
属性(使用名称-值对),请务必指定单位
之前位置
.
单位 |
描述 |
---|---|
“归一化” (默认) |
相对于父容器(通常是图形、面板或选项卡)进行规范化。容器的左下角映射到(0,0) ,右上角映射到(1,1) . |
“英寸” |
英寸。 |
“厘米” |
厘米。 |
“角色” |
基于图形根对象的默认字体:
|
“点” |
字体设计点。1点等于1/72英寸。 |
“像素” |
在Windows上,像素的距离与你的系统分辨率无关®和麦金塔电脑系统:
在Linux上®系统,像素的大小是由系统分辨率决定的。 |
GetAccess |
公共
|
SetAccess |
公共
|
依赖 |
真正的
|
NonCopyable |
真正的
|
布局
- - - - - -布局选项LayoutOptions
数组(默认)|TiledChartLayoutOptions
布局选项,指定为TiledChartLayoutOptions
对象。当图表的实例是平铺图表布局的子图表时,此属性指定选项。如果实例不是平铺图表布局的子节点(例如,它是图形或面板的子节点),则此属性为空且没有效果。否则,您可以通过设置瓷砖
和TileSpan
属性TiledChartLayoutOptions
对象。
例如,这段代码放置图表对象c
进入平铺图表布局的第三个平铺。
c.Layout.Tile = 3;
要使图表跨越多个块,请指定TileSpan
属性为一个双元素向量。例如,这个图表的跨度2
行和3.
列的瓷砖。
c. layout . tilspan = [2 3];
请注意
控件返回的轴不支持平铺图表布局金宝appgetAxes
方法。相反,您可以将图表实例放置到平铺图表布局中。
GetAccess |
公共
|
SetAccess |
公共
|
可见
- - - - - -可见性状态“上”
(默认)|开/关逻辑值可见状态,指定为“上”
或“关闭”
,或数字或逻辑1
(真正的
)或0
(假
).的值“上”
相当于真正的
,“关闭”
相当于假
.因此,您可以将此属性的值用作逻辑值。该值存储为类型的开/关逻辑值matlab.lang.OnOffSwitchState
.
“上”
—显示图表。
“关闭”
-隐藏图表而不删除它。当图表不可见时,您仍然可以访问它的属性。
GetAccess |
公共
|
SetAccess |
公共
|
依赖 |
真正的
|
GetObservable |
真正的
|
SetObservable |
真正的
|
父
- - - - - -父容器数字
对象(默认)|面板
对象|选项卡
对象|TiledChartLayout
对象图表的父容器,指定为数字
,面板
,选项卡
,或TiledChartLayout
对象。
GetAccess |
公共
|
SetAccess |
公共
|
瞬态 |
真正的
|
依赖 |
真正的
|
GetObservable |
真正的
|
SetObservable |
真正的
|
NonCopyable |
真正的
|
HandleVisibility
- - - - - -对象句柄可见性“上”
(默认)|“关闭”
图表对象句柄在其父对象的子列表中的可见性,指定为以下值之一:
“上”
-图表对象句柄总是可见的。
“关闭”
图表对象句柄在任何时候都是不可见的。此选项用于防止其他函数对图表的意外更改。若要在函数执行期间暂时隐藏句柄,请设置HandleVisibility
来“关闭”
.
“回调”
图表对象句柄在回调函数或回调函数调用的函数中可见,但在命令行调用的函数中不可见。该选项阻止在命令窗口中访问该对象,但它允许回调函数访问它。
对象中未列出该对象孩子们
属性,则通过搜索对象层次结构或查询句柄属性获取对象句柄的函数不能返回该句柄。这包括得到
,findobj
,gca
,gcf
,gco
,newplot
,班
,clf
,关闭
.
隐藏对象句柄仍然有效。设置根ShowHiddenHandles
财产“上”
列出所有的对象句柄,不管它们是什么HandleVisibility
属性设置。
GetAccess |
公共
|
SetAccess |
公共
|
依赖 |
真正的
|
GetObservable |
真正的
|
SetObservable |
真正的
|
定义一个名为SmoothPlot
它使用蓝色虚线和平滑版的线绘制一组数据。
要定义该类,请创建一个名为SmoothPlot.m
包含以下具有这些特性的类定义:
XData
和YData
对象的公共属性x- - -y原始直线的坐标数据。
SmoothColor
和SmoothWidth
控制平滑线条的颜色和宽度的公共属性。
OriginalLine
和SmoothLine
对象的私有属性行
对象为原始和平滑的数据。
一个设置
初始化方法OriginalLine
和SmoothLine
.
一个更新
方法,在用户更改属性值时更新绘图。
一个createSmoothData
方法,计算的平滑版本YData
.
classdefSmoothPlot < matlab.graphics.chartcontainer.ChartContainer属性XData(: 1)增加一倍=南YData(: 1)增加一倍=南SmoothColor(3)双{mustBeGreaterThanOrEqual (SmoothColor, 0),...mustBeLessThanOrEqual (SmoothColor, 1)}=[0.9290 0.6940 0.1250]平滑宽度(1,1)的两倍= 2结束属性(Access = private,Transient, non - copyable(1,1) matlab.graphics.chart.primitive.LineSmoothLine(1,1) matlab.graphics.chart.primitive.Line结束方法(访问=保护)函数设置(obj)创建坐标轴ax = getAxes (obj);创造原始和平滑的线条obj。OriginalLine =情节(ax,南南“线型”,“:”);(ax,“上”obj。SmoothLine =情节(ax,南南);(ax,“关闭”)结束函数更新(obj)%更新行数据obj.OriginalLine.XData = obj.XData;obj.OriginalLine.YData = obj.YData;obj.SmoothLine.XData = obj.XData;obj.SmoothLine.YData = createSmoothData (obj);%更新线条颜色和宽度obj.SmoothLine.Color = obj.SmoothColor;obj.SmoothLine.LineWidth = obj.SmoothWidth;结束函数sm = createSmoothData (obj)%计算平滑数据v = 1 (10) * 0.1;sm = conv (obj。YData v,“相同”);结束结束结束
接下来,创建一对x
和y
向量。情节x
和y
通过调用SmoothPlot
方法提供的构造函数ChartContainer
类。指定“XData”
和“YData”
名称-值对参数,并将对象返回为c
.
x = 1:1:100;Y = 10*sin(x /5) + 8*sin(10。* x + 0.5);c = SmoothPlot (“XData”, x,“YData”, y);
使用c
将平滑线条的颜色改为红色。
c.SmoothColor = [1 0 0];
在定义类时,可以包含事件
块来制作用于侦听事件的图表。
如果你定义事件
块的HasCallbackProperty
属性,MATLAB为块中的每个事件在图表上创建一个公共属性。用户可以使用这些属性定义触发事件时执行的回调函数。每个属性的名称是对应事件的名称,包含字母Fcn
追加到末尾。例如,当用户单击图表时执行回调函数的图表可能定义调用的事件点击
.当HasCallbackProperty
属性,MATLAB自动创建相应的公共属性调用ClickedFcn
在图表对象上。
例如,这里有一个事件
一个名为MyChart
:
事件(HasCallbackProperty, NotifyAccess = protected)单击结束
myfunction
执行。c = MyChart (“ClickedFcn”@myfunction)
ChartContainer
类之后分配属性值设置
方法运行在R2020a中改变了行为
的实例ChartContainer
子类,并将属性名称-值对参数传递给构造函数,则属性值在设置
方法运行。在R2019b中,属性值在设置
方法运行。
如果设置
方法引用对象上属性的值时,您可以通过以下方法中的任何一种来更新代码:
在定义属性时为其分配一个默认值。
将引用该属性的代码移动到更新
方法。
ActivePositionProperty
不推荐不建议从R2020a开始
从R2020a开始,设置或获取ActivePositionProperty
不推荐。使用PositionConstraint
财产。
目前还没有移除的计划ActivePositionProperty
调用时,该属性将不再列出集
,得到
,或属性
函数在图表对象上。
要更新代码,请进行以下更改:
替换所有实例ActivePositionProperty
与PositionConstraint
.
的所有引用“位置”
选择与“innerposition”
选择。
你点击一个链接对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站表现。其他MathWorks国家网站不适合从您的位置访问。