场上
创建表的用户界面组件
描述
例子
以编程方式更新表数据
以编程方式显示和更新表
数组中的数据表UI组件。(支持这种类型的数据只有当表图创建UI组件金宝appuifigure
函数。程序设计师使用这种类型的图来创建应用程序。)
创建一个表数组通过阅读在海啸数据从文件,并显示一个表中数据的一个子集的UI组件。
t = readtable (“tsunamis.xlsx”);var = {“年”,“MaxHeight”,“有效性”};t = t (1:20, var);无花果= uifigure;外的=场上(图,“数据”t);
更新的有效性海啸由编辑在第一行数据
UI的属性表。
uit.Data.Validity (1) = {“明确的海啸”};
从米最大高度数据转换成英尺的访问和修改数据MaxHeight
列。
uit.Data。MaxHeight= uit.Data.MaxHeight*3.281;
启用和响应交互式数据编辑代码
创建一个应用程序,允许用户编辑表数据,更新数据可视化和数据时发生了变化。(互动支持列排序只有当表图创建UI组件金宝appuifigure
函数。程序设计师使用这种类型的图来创建应用程序。)
首先,创建一个程序文件tsunamisData.m
。在程序文件:
创建一个
表
通过调用数组readtable
函数。创建一个用户界面图。
创建一个合适的和可编辑表UI组件显示在图中。存储
表
组件的数组数据
财产。创建一个气泡图来可视化海啸数据,在泡沫的坐标表示的纬度和经度海啸和泡沫的大小代表了最大高度。
指定一个
DisplayDataChangedFcn
回调使用DisplayData
属性更新时气泡图应用用户类型表中的列或编辑细胞UI组件。
函数tsunamisData%创建表数组t = readtable (“tsunamis.xlsx”);var = {“纬度”,“经”,“MaxHeight”};t = t (1:20, var);%创建用户界面图无花果= uifigure;fig.Position (3:4) = (722 - 360);%创建表的UI组件外的=场上(图);外的。数据= t; uit.ColumnSortable = true; uit.ColumnEditable = [false false true]; uit.Position(3) = 290; uit.DisplayDataChangedFcn = @updatePlot;%建立气泡图ax = uiaxes(图);ax.Position (1) = 315;ax.XLabel。字符串=“经”;ax.YLabel。字符串=“纬度”;x = t.Longitude;y = t.Latitude;深圳= t.MaxHeight;bubblechart (ax, x, y,深圳)%更新表数据更改时气泡图函数t = uit.DisplayData updatePlot (src、事件);x = t.Longitude;y = t.Latitude;深圳= t.MaxHeight;bubblechart (ax, x, y,深圳)结束结束
一个可排序的列显示头当你鼠标的箭头。排序表的最大高度海啸。
编辑的最大高度30米的海啸在第二行首先双击单元格,然后输入新高度。注意气泡图的更新。
基于数据的特定细胞的改变颜色
从R2019b开始,你可以行,列,或细胞的表使用的UI组件uistyle
和addStyle
功能。(样式表时仅支持UI组件图创建金宝appuifigure
函数。程序设计师使用这种类型的图来创建应用程序。)
样式表中的细胞含有缺失值的UI组件。在这种情况下,添加一个红色背景颜色风格的细胞南
值。
海啸示例数据读入工作区作为表数组。然后,创建一个表UI组件来显示数据。
tdata = readtable (“tsunamis.xlsx”);var = {“年”,“月”,“天”,“小时”,…“MaxHeight”,“原因”,“EarthquakeMagnitude”};tdata = tdata (1:10 0, var);无花果= uifigure (“位置”,(500 500 760 360));外的=场上(图);外的。位置= (20 720 320);外的。数据= tdata; uit.RowName =“编号”;
使用ismissing
函数得到的一个逻辑数组表包含缺失值的元素。找到的行和列元素的下标南
值。最后,创建一个红色的背景颜色与风格,并将其添加到细胞南
表中的值的UI组件。
styleIndices = ismissing (tdata);(行,坳)=找到(styleIndices);s = uistyle (“写成BackgroundColor”0.6 - 0.6 [1]);addStyle(外的年代,“细胞”,行,坳);
以编程方式访问表的选择
从R2021b开始,您可以通过编程方式设置和查询哪个表元素被选中,并指定用户可以选择是否细胞,行或列。(可编程选择表时仅支持UI组件图创建金宝appuifigure
函数。程序设计师使用这种类型的图来创建应用程序。)
使用该功能,创建一个应用程序时自动把数据嵌入到地图上用户选择表。首先,创建一个程序文件selectTsunamis.m
。在程序文件:
通过调用加载海啸数据
readtable
函数。创建一个UI图与表UI组件和地理泡泡图面板。
配置表UI组件。海啸中的数据存储
数据
财产,通过设置让用户选择多个行SelectionType
和多选
属性。指定一个
SelectionChangedFcn
时更新气泡图的回调应用用户更改表选择。为每个选定行功能块泡沫,泡沫的大小代表了最大的海啸高度。
函数selectTsunamis%加载数据T = readtable (“tsunamis.xlsx”);var = {“纬度”,“经”,“MaxHeight”};T = T (1:20, var);%创建UI组件无花果= uifigure (“位置”,(500 500 700 350));台=场上(图,“位置”,20 250 300);pnl = uipanel(图,“位置”,(285 400 300));geobubble (pnl [], []);%配置表资源描述。数据= T; tbl.SelectionType =“行”;资源描述。多选=“上”;资源描述。SelectionChangedFcn = @plotTsunami;%情节海啸数据为每个选定的行函数plotTsunami (src、事件)行= event.Selection;data = src.Data(行,:);lat = data.Latitude;长= data.Longitude;ht = data.MaxHeight;geobubble (lat, pnl长,ht);结束结束
运行selectTsunamis
功能,选择多个表行通过压低Ctrl而点击。情节与海啸数据更新。
以编程方式滚动表行
从R2021a开始,您可以通过编程方式滚动一行,列,或细胞的表使用的UI组件滚动
函数。(编程时仅支持滚动表图创建UI组件金宝appuifigure
函数。程序设计师使用这种类型的图来创建应用程序。)
样本病人数据读入工作区作为表数组。然后,创建一个表UI组件来显示数据。
tdata = readtable (“patients.xls”);var = {“年龄”,“收缩”,舒张压的,“抽烟”};tdata = tdata (40、var);无花果= uifigure;外的=场上(图,“数据”,tdata);外的。RowName =“编号”;
滚动到25行表的。
滚动(外的,“行”,25)
显示数组的数字
创建一个表UI组件显示10-by-3随机整数的数组。的数据
属性指定的值显示,位置
属性指定表的位置和尺寸图。
f =图;外的=场上(f,“数据”3),兰迪(100,10日,“位置”,20 262 204);
显示混合数据类型
表UI组件可以容纳不同数据类型的列的混合物。
创建一个空表
UI组件。
f =图;外的=场上(f);
设置数据
属性来填充数据作为一个单元阵列包含不同类型的混合物。然后设置位置
属性表的调整位置和大小以适应数据。
d = {“男”52岁的正确;“男”现年40岁的正确;“女”25岁的虚假};外的。数据= d; uit.Position = [20 20 258 78];
设置ColumnName
属性改变列标题的描述性名称。设置ColumnEditable
财产真正的
这样用户可以在UI编辑数据。当用户改变一个值在UI中,数据
属性更新以反映这一变化。
外的。ColumnName = {“性别”,“年龄”,“授权”};外的。ColumnEditable = true;
输入参数
名称-值参数
例子:场上(图,“数据”,[1 2 3;4 5 6])
指定可选的逗号分隔条名称,值
参数。的名字
参数名称和吗价值
相应的价值。的名字
必须出现在单引号(' '
)。您可以指定几名和值参数Name1, Value1,…,的家
。
请注意
这里列出的属性是可用的属性的一个子集。的完整列表,请参阅表属性。
数据
- - - - - -表数据
表数组|数字数组|逻辑阵列|单元阵列|字符串数组|……
表数据,指定为以下类型的数组:
为了防止警告或南
值显示当用户输入无效的数据转换成一个可编辑的单元格,写一个CellEditCallback
函数将数据转换为适当的类型。当用户编辑一个细胞时,数据
属性更新。
指定一个表数组
在应用程序设计和应用程序使用的创建uifigure
功能,您可以指定数据
房地产作为一个表数组。表数组提供一种方便的方式来存储表格数据作为一个MATLAB变量。的表
,readtable
,array2table
函数创建表数组。相比之下,场上
函数创建一个表
UI组件(一个应用程序的用户界面组件)。
当你指定数据
财产的表
UI组件作为一个表数组,然后用MATLAB设置的格式表
UI组件自动基于表数组中的值:
默认情况下,列名称显示在应用程序匹配
VariableNames
属性表的数组。改变了ColumnName
财产的表
UI组件更新UI,但它不更新表中的变量名称数组。默认情况下,名称显示在应用程序匹配的行
RowName
属性表的数组。改变了RowName
财产的表
UI组件更新UI,但它不更新表中的行名称数组。每个表的数据类型数组变量控制程序中的相应列格式。如果你想设置
ColumnFormat
财产,MATLAB返回一个警告。
显示表数组数据的更多信息,请参阅表数组数据类型在程序设计应用程序。
指定数字、逻辑单元、字符串数组或单元阵列特征向量
使用ColumnFormat
属性指定格式的数据,是一个数字,逻辑、细胞,字符串数组或单元阵列的特征向量。如果数据编辑和结果之间的不匹配的数据类型和数据ColumnFormat
财产,MATLAB转换数据或显示一个警告。看到数据显示可编辑列在ColumnFormat
属性描述的更多信息。
ColumnWidth
- - - - - -表列的宽度
“汽车”
(默认)|“健康”
|“1 x”
|1 -n
单元阵列
表列的宽度,指定为“汽车”
或作为一个1
——- - - - - -n
单元阵列特征向量、字符串和数值。在uifigure
的应用程序,你可以另外指定列宽为“1 x”
或“健康”
。
自动宽度——指定
“汽车”
有MATLAB计算列的宽度自动使用几个因素,其中一个是ColumnName
属性值。宽度适合内容(
uifigure
的应用程序)——指定一个值“健康”
配置列严格调整宽度适合列名和数据。此设置允许比窄列“汽车”
所做的事。统一的宽度(
uifigure
的应用程序)——指定一个值“1 x”
使所有列相同的宽度,将同样的可用空间。固定宽度,指定一个数值单元阵列定义列宽的像素单元。
组合——你可以把固定和可变单元阵列的列宽。单元阵列中的每个元素对应于表中的一列。如果您所指定的单元阵列值比列的数量少,然后没有指定值的列的默认值
“汽车”
。如果数组值比列的数量,MATLAB忽略了额外的价值。加权变量的宽度(
uifigure
的应用程序只)——指定一个细胞与特征向量数组或字符串组成的连接的数量“x”
(例如,“2 x”
,“3 x”
等)。每一列的未知因素集,列宽比例对他人,考虑UI表中剩余的空间。
例子:外的=场上(uifigure ColumnWidth,“汽车”,“数据”,[1 2 3,4 5 6])
例子:外的=场上(uifigure“ColumnWidth”,“健康”,“数据”,[1 2 3,4 5 6])
例子:外的=场上(uifigure ColumnWidth,{64、60、40},“数据”,[1 2 3,4 5 6])
例子:外的=场上(uifigure ColumnWidth, {' 2 x ', ' 1 x ', ' 1 x '},“数据”,[1 2 3,4 5 6])
例子:外的=场上(uifigure ColumnWidth,{64,“汽车”,40},“数据”,[1 2 3,4 5 6])
例子:外的=场上(uifigure ColumnWidth,{‘配合’,‘1 x’,‘3 x’},“数据”,[1 2 3,4 5 6])
ColumnEditable
- - - - - -编辑列细胞的能力
[]
(默认)|逻辑1 -n
数组|逻辑标量
能够编辑列细胞,指定为:
一个空逻辑阵列(
[]
)- - -没有可编辑列。一个逻辑1 -
n
数组,该数组中指定的列是可编辑的。的价值n
等于表中的列数。数组中的每个值对应于一个表列。的值真正的
数组中的细胞,可编辑列。的值假
使细胞这一列uneditable。如果数组值比列的数量,MATLAB忽略多余的值。如果数组的值比列的数量少,然后没有指定值的列不编辑。一个逻辑标量——整个表是可编辑或uneditable。
当用户编辑一个细胞时,数据
属性更新。
例子:外的=场上(uifigure,“数据”,兰德(10,3),“ColumnEditable”,[假真的真])
例子:外的=场上(uifigure,“数据”,兰德(10,3),“ColumnEditable”,假)
来支持用户交互与控制表列包含复选框或弹出式菜单,设置ColumnEditable
财产真正的
。
如果数据
属性是一个表数组,那么多列或包含不可编辑的任何变量的数据类型,等等持续时间
不运行应用程序即使在可编辑ColumnEditable
属性是真正的
。表中包含混合数据类型数组变量中可编辑单元阵列运行应用程序,只要数据类型是可编辑的。
CellEditCallback
- - - - - -单元格编辑回调函数
函数处理|单元阵列|特征向量
单元格编辑回调函数,指定这些值之一:
一个处理函数。
细胞数组中第一个元素是一个函数处理。后续单元阵列中的元素传递给回调函数的参数。
一个特征向量包含有效的MATLAB表达式(不推荐)。MATLAB计算表达式的基本工作空间。
使用这个回调函数执行计算或验证时输入应用程序用户更改表格单元的内容。
这个回调函数可以访问特定用户的信息交互与细胞(如细胞指数)。MATLAB中传递这些信息CellEditData
回调函数对象作为第二个参数。在应用程序设计,论证事件
。你可以查询对象属性使用点符号。例如,event.Indices
返回所选单元的指标。的CellEditData
对象不可用回调函数指定为特征向量。
下面的表描述的属性CellEditData
对象。
财产 |
描述 |
---|---|
指数 |
这是1×2数组包含单元格的行和列索引的用户编辑应用程序运行。当一个列进行排序, |
DisplayIndices |
这是一个1×2数组包含行和列索引对应的位置编辑单元格显示的排序表。如果用户不列,那么 |
PreviousData |
这是前面的单元格数据。默认值是一个空的矩阵, |
EditData |
这是用户输入的值。 |
NewData |
这是MATLAB编写的价值 的 |
错误 |
这是返回的错误消息如果MATLAB检测到一个错误的用户输入的数据。 的 如果 |
源 |
组件执行回调。 |
EventName |
|
当用户编辑单元格,MATLAB执行这些步骤:
试图进入存储新的价值
数据
表的属性调用
CellEditCallback
函数(如果它存在的话)
如果该值会导致错误和没有CellEditCallback
函数,然后细胞数据恢复到原来的大小,显示没有错误。
写回调函数的更多信息,请参阅回调程序设计师。
位置
- - - - - -的位置和尺寸表
(左底宽高)
指定的位置和尺寸表,作为研制出向量的形式(左底宽高)
。此表描述向量中每个元素。
元素 | 描述 |
---|---|
左 |
内心的左边缘的距离父容器的外部表的左边缘 |
底 |
距离内底边缘父容器的外部表的底部边缘 |
宽度 |
左、右外边缘之间的距离 |
高度 |
顶部和底部的外边缘之间的距离 |
所有测量单位指定的单位
财产。
的位置
值是相对的可拉的区域父容器。在绘图区域的面积内容器的边界和不包括装饰所占据的区域如菜单栏或标题。
单位
- - - - - -度量单位
“像素”
|“归一化”
|“英寸”
|“厘米”
|“点”
|……
度量单位,指定为这个表中的值之一。
单位价值 | 描述 |
---|---|
“像素” (默认) |
距离的像素是独立的系统分辨率在Windows®和麦金塔电脑系统:
在Linux上®系统中,一个像素的大小取决于您的系统分辨率。 |
“归一化” |
这些单位规范化对父容器。左下角的容器映射到 |
“英寸” |
英寸。 |
“厘米” |
厘米。 |
“点” |
点。一个点= 1/72nd英寸。 |
推荐值“像素”
,因为大多数MATLAB应用程序构建功能措施在像素的距离。您可以创建一个表,重新调节基于父容器的大小通过育儿表创建一个网格布局管理器使用uigridlayout
函数。有关更多信息,请参见列出应用程序以编程方式。
图
的应用程序
表在使用创建应用程序图
函数的默认值单位
是“归一化”
。
此外,您可以指定单位
作为“角色”
。字符单元是基于图形的默认uicontrol字体根对象:
字符宽度=字母的宽度
x
。字符高度=基线两行文字之间的距离。
访问默认uicontrol字体,使用get(大的,“defaultuicontrolFontName”)
或集(大的,“defaultuicontrolFontName”)
。
版本历史
介绍了R2008aR2022a:交互式地重新排列列
指定能够交互式地重新排列表列在一个应用程序使用ColumnRearrangeable
财产。在一个表的UI组件ColumnRearrangeable
值设置为“上”
,重新排列表列在应用程序通过点击和拖动列标题。
在应用程序设计和应用程序使用的创建uifigure
功能,你可以计划一个应用程序响应当用户将通过创建一个表列DisplayDataChangedFcn
回调函数。
有关更多信息,请参见表属性。
R2021b:设置、查询和配置选项表选择
使用属性来配置选择的选项表UI组件。
设置和查询的表选择使用
选择
财产。指定用户可以选择单元格,使用的行或列
SelectionType
财产。指定用户可以选择单个或多个表元素使用
多选
财产。每当用户选择更新您的应用程序通过指定表数据
SelectionChangedFcn
回调。
选择选项表支持UI组件只在应用程序设计师应用程序和数据创建的金宝appuifigure
函数。
有关更多信息,请参见表属性。
另请参阅
功能
属性
MATLAB命令
你点击一个链接对应MATLAB命令:
运行该命令通过输入MATLAB命令窗口。Web浏览器不支持MATLAB命令。金宝app
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。