主要内容

图像属性

形象外观与行为

形象属性控制外观和行为形象对象。通过更改属性值,可以修改图像的某些方面。使用点表示法查询和设置属性。

im=图像(兰特(20));C=im.CData;im.CDataMapping='缩放';

颜色和透明度

全部展开

图像颜色数据,以下列形式之一指定:

  • 向量或矩阵-这种格式定义了索引图像数据。每个元素为图像的一个像素定义一种颜色。元素映射到颜色映射中的颜色。的CDATA映射属性控制映射方法。

  • 这种格式使用RGB三联体值定义真彩色图像数据。每个RGB三元组为图像的一个像素定义一种颜色。RGB三元组是一个由三个元素组成的向量,它指定颜色的红色、绿色和蓝色组件的强度。3d数组的第一页包含红色组件,第二页包含绿色组件,第三页包含蓝色组件。由于图像使用真实的颜色,而不是彩色地图的颜色CDATA映射财产无效。

    • 如果CData是一种,则为RGB三联体值(0 0 0)对应于黑色和黑色(1 1 1)对应于白色。

    • 如果CData是整数类型,则图像使用全部数据范围来确定颜色。例如,如果CData是一种uint8,然后(0 0 0)对应于黑色和黑色[255 255 255]对应于白色。如果CData是一种int8,然后[-128 -128 -128]对应于黑色和黑色[127 127 127]对应于白色。

    • 如果CData是一种逻辑,然后(0 0 0)对应于黑色和黑色(1 1 1)对应于白色。

此图显示了的相对尺寸CData用于两种颜色的模型。

的行为元素未定义。

数据类型:仅有一个的||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑

颜色数据映射方法,指定为“直接的”“缩放”.使用此属性控制颜色数据值的映射CDatacolormap。CData必须是定义索引颜色的向量或矩阵。此属性在以下情况下无效:CData是定义真彩色的三维数组。

这些方法有以下效果:

  • “直接的”-将值解释为当前颜色映射中的索引。小数部分的值固定为最接近的较低整数。

    • 如果值的类型为仅有一个的,则为1或更少映射到colormap中的第一种颜色。值等于或大于colormap映射到colormap中最后一种颜色的长度。

    • 如果值的类型为uint8uint16uint32uint64int8int16int32int64,则为0或更少的映射到颜色映射中的第一种颜色。等于或大于colormap长度的值映射到colormap中的最后一种颜色(或达到类型的范围限制)。

    • 如果值的类型为逻辑,则为0映射到colormap中的第一种颜色和1映射到颜色映射中的第二种颜色。

  • “缩放”-将值缩放到最小和最大颜色限制之间的范围。这个这一属性包含颜色限制。

透明度数据,以下列形式之一指定:

  • 标量-在整个图像中使用一致的透明度。

  • 大小相同的数组CData-为每个图像元素使用不同的透明度值。

字母数据映射属性控制如何使用MATLAB®解释alpha数据透明度值。

例子:0.5

数据类型:仅有一个的||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑

解读字母数据值,指定为以下值之一:

  • “没有”-将这些值解释为透明度值。值为1或更大为完全不透明,值为0或更小为完全透明,值介于0和1之间为半透明。

  • “缩放”-将值映射到图形的alphamap中。坐标轴的最小和最大alpha限制分别决定映射到alphamap中第一个和最后一个元素的alpha数据值。例如,如果极限是[3 5],则alpha数据值小于或等于3.映射到alphamap中的第一个元素。数据值大于或等于5映射到alphamap中的最后一个元素。的阿利姆轴的属性包含极限。的字母地图属性包含字母映射。

  • “直接的”-将这些值解释为图形字母图中的索引。小数部分的值固定为最接近的较低整数:

    • 如果值的类型为仅有一个的,则1或更小的值映射到alphamap中的第一个元素。等于或大于到alphamap中最后一个元素的alphamap映射长度的值。

    • 如果值的类型为integer,则0或更小的值映射到alphamap中的第一个元素。值等于或大于alphamap映射到alphamap中最后一个元素的长度(或不超过类型的范围限制)。整数类型是uint8uint16uint32uint64int8int16int32int64

    • 如果值的类型为逻辑,则0的值映射到alphamap中的第一个元素,1的值映射到alphamap中的第二个元素。

插值方法,指定为“最近的”双线性的. MATLAB使用插值在屏幕上显示图像的缩放或旋转版本。选择的值不会影响图像数组。但是,如果保存图形或导出轴的内容,则MATLAB将保存图像的插值视觉表示。

根据图像内容和想要达到的效果选择插值方法:

  • “最近的”-当有少量像素值代表不同的类别时,或者当你想在高度放大的视图中看到单个像素时,这种方法是最好的。位于(xy)为最接近(xy)在原始图像中。

  • 双线性的-这种方法在几乎所有其他情况下都是最好的。位于以下位置的像素的值:(xy)是原始图像中周围像素的加权平均值。为了最小化显示瑕疵,在收缩图像时会应用额外的平滑。如果您的MATLAB会话或图形正在使用Painters渲染器,则在图像收缩时不会有额外的平滑。要确定渲染器,请调用渲染器信息函数。

位置

全部展开

放置在x-轴,以下列形式之一指定:

  • 二元向量——使用第一个元素作为的中心位置CData (1, 1)而第二个元素作为中心的位置CData(m,n),在那里[m,n]=大小(CData). 均匀地分布剩余部分的中心CData这两点之间的要素。

    每个像素的宽度由表达式决定:

    (扩展数据(2)-扩展数据(1))/(大小(CData,2)-1)

    如果扩展数据(1)>扩展数据(2),然后图像左右翻转。

  • 标量-中心CData (1, 1)在该位置和每个后续元件相隔一个单元。

数据类型:仅有一个的||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑

沿y-轴,以下列形式之一指定:

  • 二元向量——使用第一个元素作为的中心位置CData (1, 1)而第二个元素作为中心的位置CData(m,n),在那里[m,n]=大小(CData). 均匀地分布剩余部分的中心CData这两点之间的要素。

    每个像素的高度由表达式决定:

    (YData(2)-YData(1))/(大小(CData,1)-1)

    如果YData (1)>YData (2),然后将图像上下翻转。

  • 标量-中心CData (1, 1)在该位置和每个后续元件相隔一个单元。

数据类型:仅有一个的||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑

互动性

全部展开

可见性状态,指定为“上”“关闭”,或数字或逻辑1符合事实的)或0).价值“上”相当于符合事实的“关闭”相当于. 因此,可以将此属性的值用作逻辑值。该值存储为类型为的开/关逻辑值matlab.lang.OnOffSwitchState

  • “上”-显示对象。

  • “关闭”-隐藏对象而不删除它。您仍然可以访问不可见对象的属性。

数据提示内容,指定为数据模板对象通过修改基础文档的属性,可以控制显示在数据提示中的内容数据模板对象有关属性列表,请参见数据模板属性

有关修改数据提示的示例,请参见创建自定义数据提示

此属性仅适用于具有固定数据提示的图像。

请注意

数据模板对象未由返回芬多布吉findall,它不会被复制copyobj

上下文菜单,指定为快捷菜单对象。使用此属性可在右键单击对象时显示上下文菜单。控件创建上下文菜单uicontextmenu函数。

请注意

如果PickableParts属性设置为“没有”或者如果HitTest属性设置为“关闭”,则不会显示关联菜单。

选择状态,指定为“上”“关闭”,或数字或逻辑1符合事实的)或0).价值“上”等于true,并且“关闭”相当于. 因此,可以将此属性的值用作逻辑值。该值存储为类型为的开/关逻辑值matlab.lang.OnOffSwitchState

  • “上”-选中。如果在打印编辑模式下单击对象,则MATLAB将设置其选择财产“上”. 如果SelectionHighlight属性也设置为“上”,然后MATLAB显示对象周围的选择手柄。

  • “关闭”-未选择。

选择时显示选择手柄,指定为“上”“关闭”,或数字或逻辑1符合事实的)或0).价值“上”等于true,并且“关闭”相当于. 因此,可以将此属性的值用作逻辑值。该值存储为类型为的开/关逻辑值matlab.lang.OnOffSwitchState

  • “上”-当选择属性设置为“上”

  • “关闭”-永远不要显示选择句柄,即使选择属性设置为“上”

根据坐标轴限制裁剪对象,指定为“上”“关闭”,或数字或逻辑1符合事实的)或0).价值“上”等于true,并且“关闭”相当于. 因此,可以将此属性的值用作逻辑值。该值存储为类型为的开/关逻辑值matlab.lang.OnOffSwitchState

  • 的值“上”剪辑对象超出轴限制的部分。

  • 的值“关闭”显示整个对象,即使其部分显示在轴限制之外。如果创建打印,则对象的某些部分可能会显示在轴限制之外等等,冻结轴缩放,然后创建对象,使其比原来的plot更大。

剪辑包含对象的轴的属性必须设置为“上”. 否则,此属性无效。有关剪裁行为的详细信息,请参见剪辑轴的性质。

回调

全部展开

鼠标单击回调,指定为以下值之一:

  • 函数处理

  • 单元格数组,包含函数句柄和附加参数

  • 字符向量,这是一个有效的MATLAB命令或函数,在基本工作区中进行评估(不推荐)

单击对象时,使用此属性可执行代码。如果使用函数句柄指定此属性,则在执行回调时,MATLAB会向回调函数传递两个参数:

  • Clicked object—从回调函数中访问单击对象的属性。

  • 事件数据-空参数。将其替换为波浪字符(),以指示不使用此参数。

有关如何使用函数句柄来定义回调函数的更多信息,请参见回调定义

请注意

如果PickableParts属性设置为“没有”或者如果HitTest属性设置为“关闭”,则不执行此回调。

对象创建函数,指定为以下值之一:

  • 函数处理。

  • 第一个元素是函数句柄的单元格数组。单元格数组中的后续元素是传递给回调函数的参数。

  • 包含有效MATLAB表达式的字符向量(不推荐)。MATLAB在基本工作空间中计算此表达式。

有关将回调指定为函数句柄、单元格数组或字符向量的详细信息,请参见回调定义

此属性指定MATLAB创建对象时要执行的回调函数。MATLAB在执行CreateFcn回拨。如果未指定CreateFcn属性,然后MATLAB执行一个默认创建函数。

设定CreateFcn现有组件上的属性无效。

如果将此属性指定为函数句柄或单元格数组,则可以使用回调函数的第一个参数访问正在创建的对象。否则,使用gcbo函数来访问对象。

对象删除函数,指定为以下值之一:

  • 函数处理。

  • 第一个元素是函数句柄的单元格数组。单元格数组中的后续元素是传递给回调函数的参数。

  • 包含有效MATLAB表达式的字符向量(不推荐)。MATLAB在基本工作空间中计算此表达式。

有关将回调指定为函数句柄、单元格数组或字符向量的详细信息,请参见回调定义

此属性指定当MATLAB删除对象时执行的回调函数。MATLAB执行DeleteFcn在销毁对象的属性之前回调。如果不指定DeleteFcn属性,然后MATLAB执行一个默认删除函数。

如果将此属性指定为函数句柄或单元格数组,则可以使用回调函数的第一个参数访问要删除的对象。否则,请使用gcbo函数来访问对象。

回调执行控制

全部展开

回调中断,指定为“上”“关闭”,或数字或逻辑1符合事实的)或0).价值“上”相当于符合事实的“关闭”相当于. 因此,可以将此属性的值用作逻辑值。该值存储为类型为的开/关逻辑值matlab.lang.OnOffSwitchState

此属性确定是否可以中断正在运行的回调。有两种回调状态需要考虑:

  • 跑步callback是当前正在执行的回调。

  • 打断Callback是一个试图中断正在运行的回调的回调。

每当MATLAB调用回调时,该回调尝试中断正在运行的回调(如果存在的话)。的可中断拥有运行回调的对象的属性确定是否允许中断。

  • 的值“上”允许其他回调来中断对象的回调。中断发生在MATLAB处理队列的下一个点,例如当有刷新屏幕数字uifiguregetframe等待暂停命令

    • 如果正在运行的回调函数包含其中一个命令,那么MATLAB将在此时停止回调函数的执行,并执行中断回调函数。当中断回调完成时,MATLAB继续执行正在运行的回调。

    • 如果正在运行的回调不包含这些命令中的任何一个,那么MATLAB将在不中断的情况下完成回调的执行。

  • 的值“关闭”阻止所有中断尝试。的BusyAction拥有中断回调的对象的属性确定中断回调是被丢弃还是放入队列。

请注意

回调中断和执行在以下情况下表现不同:

  • 如果中断回调是DeleteFcnCloseRequestFcnSizeChangedFcn回调,则中断发生,而不考虑可中断属性值。

  • 如果正在运行的回调函数正在执行等待函数,则不管可中断属性值。

  • 计时器对象根据调度执行,而不管可中断属性值。

发生中断时,MATLAB不会保存属性或显示的状态。例如,由gcagcf当执行另一个回调时,命令可能会更改。

回调队列,指定为“队列”“取消”. 这个BusyAction属性确定MATLAB如何处理中断回调的执行。有两种回调状态需要考虑:

  • 跑步callback是当前正在执行的回调。

  • 打断Callback是一个试图中断正在运行的回调的回调。

每当MATLAB调用回调时,该回调都会尝试中断正在运行的回调。这个可中断属性决定是否允许中断。如果不允许中断,那么BusyAction拥有中断回调的对象的属性确定它是被丢弃还是放入队列。这些是BusyAction财产:

  • “队列”-在正在运行的回调完成执行后,将中断回调放入要处理的队列中。

  • “取消”-不执行中断回调。

捕获鼠标点击的能力,指定为以下值之一:

  • “可见的”-仅在可见时捕获鼠标单击。这个可见属性必须设置为“上”. 这个HitTest属性确定形象对象响应单击或祖先响应。

  • “没有”-无法捕获鼠标点击。单击形象对象将单击传递给图形窗口当前视图中它后面的对象。的HitTest财产形象对象没有效果。

对捕获的鼠标单击的响应,指定为“上”“关闭”,或数字或逻辑1符合事实的)或0).价值“上”等于true,并且“关闭”相当于. 因此,可以将此属性的值用作逻辑值。该值存储为类型为的开/关逻辑值matlab.lang.OnOffSwitchState

  • “上”——触发ButtonDownFcn收回形象对象如果您已经定义了快捷菜单属性,然后调用上下文菜单。

  • “关闭”对象的最近祖先触发回调形象对象,该对象具有以下之一:

    • HitTest属性设置为“上”

    • PickableParts属性设置为允许祖先捕获鼠标单击的值

请注意

PickableParts属性确定形象对象可以捕获鼠标点击。如果不能,那么HitTest财产无效。

此属性是只读的。

删除状态,返回类型为开/关逻辑值matlab.lang.OnOffSwitchState

MATLAB设置BeingDeleted财产“上”DeleteFcn回调开始执行。这个BeingDeleted属性仍设置为“上”直到组件对象不再存在。

检查BeingDeleted属性来验证对象在查询或修改之前不会被删除。

父母/子女

全部展开

父级,指定为使改变对象。

孩子们,作为一个空的GraphicsPlaceholder数组或数据提示对象数组。使用此属性可以查看绘制在图表上的数据提示列表。

不能使用添加或删除子项孩子们财产。要将子列表添加到此列表,请设置财产数据提示对象到图表对象。

中对象句柄的可见性孩子们属性,指定为以下值之一:

  • “上”-对象句柄始终可见。

  • “关闭”对象句柄在任何时候都是不可见的。这个选项对于防止另一个函数的意外更改非常有用。设置可操作性“关闭”在函数执行期间暂时隐藏句柄。

  • “回调”-对象句柄在回调或回调调用的函数中可见,但在从命令行调用的函数中不可见。此选项阻止在命令行访问对象,但允许回调函数访问它。

如果对象未在列表中列出孩子们属性,则通过搜索对象层次结构或查询句柄属性获得对象句柄的函数不能返回它。此类函数的示例包括得到芬多布吉gcagcfgconewplotclaclf关闭功能。

隐藏对象句柄仍然有效。扎根显示隐藏句柄财产“上”列出所有对象句柄,而不管它们的可操作性属性设置。

标识符

全部展开

此属性是只读的。

图形对象的类型,返回为“图像”

对象标识符,指定为字符向量或字符串标量。您可以指定一个唯一的标签值作为对象的标识符。当您需要访问代码中其他地方的对象时,可以使用芬多布吉函数以基于标签价值

用户数据,指定为任何MATLAB数组。例如,可以指定标量、向量、矩阵、单元数组、字符数组、表或结构。使用此属性可在对象上存储任意数据。

如果您在应用程序设计器中工作,请在应用程序中创建公共或私有属性以共享数据,而不是使用用户数据财产。有关更多信息,请参见在应用程序设计器应用程序中共享数据

兼容性考虑

全部展开

不建议在R2020a开始

在R2006a之前引入