主要内容

应用程序设计器应用程序中的表数组数据类型

表数组对于存储MATLAB中的表格数据很有用®变量。例如,您可以调用readtable函数从电子表格创建一个表数组。

表格相比之下,UI组件是在应用程序中显示表格数据的用户界面组件。类中可以显示的数据类型,从R2018a开始表格UI组件包括表数组。属性创建的应用程序设计器应用程序和图形uifigure函数支持表数组。金宝app

当你在应用程序中显示表数组数据时,你可以利用某些数据类型的交互功能。不像其他类型的数组表格UI组件支持,表数组数据不按金宝app显示ColumnFormat的属性表格UI组件。

逻辑数据

在一个表格UI组件,逻辑值显示为复选框。真正的值被检查,而值未选中。当ColumnEditable的属性表格UI组件是真正的,用户可以选择和清除应用程序中的复选框。

FIG = ufigure;Tdata = table([true;真正的;假);Uit = uitable(图,“数据”, tdata);unit . position (3) = 130;外的。RowName =“编号”

只有一列的表UI组件。每个单元格包含一个复选框。前两行复选框被选中,第三行复选框未选中。

分类数据

分类值可以以下拉列表或文本的形式显示。类别出现在下拉列表中ColumnEditable的属性表格UI组件是真正的.否则,类别将显示为文本,没有下拉列表。

FIG = ufigure;Cnames = category ({“蓝”“红色”}, {“蓝”“红色”});W = [400;700);Tdata = table(cnames,w,“VariableNames”, {“颜色”“波长”});Uit = uitable(图,“数据”tdata,“ColumnEditable”,真正的);

表UI组件。选择“颜色”列中的单元格,并显示值为“蓝色”和“红色”的下拉列表。

如果分类数组不受保护,用户可以通过在单元格中输入在运行的应用程序中添加新的类别。

Datetime数据

datetime的值显示格式属性对应的表变量(adatetime数组)。

FIG = ufigure;日期= datetime([2016,01,17;2017、01 20),“格式”“MM / dd /哦哦”);M = [10;9);Tdata = table(日期,m,“VariableNames”, {“日期”“测量”});Uit = uitable(图,“数据”, tdata);

若要更改格式,请使用点符号设置格式表变量的属性。文件中的数据进行替换表格UI组件。

tdata.Date.Format =“dd / MM /哦哦”;外的。数据= tdata;

ColumnEditable的属性表格UI组件是真正的时,用户可以在应用程序中更改日期值。当列是可编辑的时,应用程序期望输入值符合格式的属性datetime数组中。如果用户输入的日期无效,表格中显示的值为NaT

持续时间数据

持续时间的值显示格式属性对应的表变量(a持续时间数组)。

FIG = ufigure;Mtime = duration([0;0],[1;1],[20;30]);Dist = [10.51;10.92);Tdata = table(mtime,dist,“VariableNames”, {“时间”“距离”});Uit = uitable(图,“数据”, tdata);

表UI组件,有两列标记为“时间”和“距离”。“时间”列数据以HH:MM:SS格式显示,“距离”列数据以小数点后四位数字显示。

若要更改格式,请使用点符号设置格式表变量的属性。

tdata.Time.Format =“年代”;外的。数据= tdata;

表UI组件,有两列标记为“时间”和“距离”。“时间”列的数据以秒为单位显示,“距离”列的数据以小数点后四位数字显示。

细胞包含持续时间值在运行的应用程序中是不可编辑的,即使在ColumnEditable表格UI组件是真正的

Nonscalar数据

非标量值在应用程序中的显示方式与在命令窗口中的显示方式相同。例如,此表数组包含3-D数组和结构体数组。

FIG = ufigure;Arr = {rand(3,3,3);兰特(3,3,3)};S = {struct;struct};Tdata = table(arr,s,“VariableNames”, {“数组”“结构”});Uit = uitable(图,“数据”, tdata);

表UI组件,有两列标记为“数组”和“结构”。“数组”列中的每个单元格读为“3x3x3 double”,“结构”列中的每个单元格读为“1x1 struct”。

多列表数组变量在应用程序中显示为组合列,就像在命令窗口中一样。例如,RGB变量在这个表数组是一个3乘3数组。

N = [1;2;3];RGBS = [128 122 16;0 66 155;255 0 0];Tdata = table(n,rgbs,“VariableNames”, {“投资回报”“RGB”})
tdata = 3×2 table ROI RGB ___ _________________ 1 128 122 16 2 0 66 155 3 255 0 0

表格UI组件提供了类似的表示。中选择项RGBColumn选择该行中的所有子列。在运行的应用程序中,子列中的值是不可编辑的ColumnEditable的属性表格UI组件是真正的

FIG = ufigure;Uit = uitable(图,“数据”, tdata);

表UI组件有两列标记为“ROI”和“RGB”。“RGB”列有三个子列,分别存放RGB值。

缺失数据值

缺失值根据数据类型显示为指示器:

  • 缺失的字符串显示为< >失踪

  • 未定义的分类值显示为<定义>

  • 无效或未定义的数字或持续时间值显示为

  • 无效或未定义datetime值显示为NaT

如果ColumnEditable的属性表格UI组件是真正的,然后用户可以在正在运行的应用程序中纠正这些值。

FIG = ufigure;Sz =绝对的([1;3;4;2), 1:3, {“大”“媒介”“小”});num = [NaN;10;12;15);Tdata = table(sz,num,“VariableNames”, {“大小”“数量”});Uit = uitable(图,“数据”tdata,“ColumnEditable”,真正的);

表UI组件,有两列标记为“大小”和“数字”。“Size”列中的一个单元格显示“<undefined>”,“Number”列中的一个单元格显示“NaN”。具有“NaN”值的单元格将突出显示并可编辑。

示例:显示表数组的应用程序

这个应用程序展示了如何显示一个表格应用程序中使用表数组数据的UI组件。表数组包含数字逻辑分类,和多列变量。

StartupFcn回调函数将电子表格加载到表数组中。然后在应用程序中显示并绘制数据的子集。其中一个图显示原始表数据。表中的另一个图最初显示相同的表数据,然后在用户编辑值或对列进行排序时更新表格UI组件。

另请参阅

|

相关的话题