主要内容

表数组数据类型在应用程序设计程序

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

表格相比之下,UI组件是在应用程序中显示表格数据的用户界面组件。从R2018a开始,可以在一个表格UI组件包括表数组。只有App Designer应用程序和数字创建与uifigure函数支持表数组。金宝app

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

逻辑数据

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

无花果= uifigure;tdata =表([真实;真正的;假);外的=场上(图,“数据”, tdata);uit.Position (3) = 130;外的。RowName =“编号”

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

分类数据

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

无花果= uifigure;cname =分类({“蓝”“红色”},{“蓝”,“红色”});w = [400;700);tdata =表(cname, w,“VariableNames”, {“颜色”,“波长”});外的=场上(图,“数据”tdata,“ColumnEditable”,真正的);

表的UI组件。选择“Color”列中的单元格,并显示一个值为“Blue”和“Red”的下拉列表。

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

Datetime数据

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

无花果= uifigure;日期= datetime([2016、01 17;2017、01 20),“格式”,“MM / dd /哦哦”);m = [10;9);tdata =表(日期、米、“VariableNames”, {“日期”,“测量”});外的=场上(图,“数据”, tdata);

若要更改格式,请使用点表示法设置格式属性的表变量。然后,替换表格UI组件。

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

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

持续时间数据

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

无花果= uifigure;mtime =持续时间((0,0),(1,1),(20、30));dist = (10.51;10.92);tdata =表(mtime,经销,“VariableNames”, {“时间”,“距离”});外的=场上(图,“数据”, tdata);

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

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

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

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

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

Nonscalar数据

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

无花果= uifigure;arr ={兰德(3,3,3);兰特(3,3,3)};s ={结构;struct};tdata =表(加勒比海盗,年代,“VariableNames”, {“数组”,“结构”});外的=场上(图,“数据”, tdata);

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

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

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

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

无花果= uifigure;外的=场上(图,“数据”, tdata);

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

丢失的数据值

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

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

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

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

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

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

无花果= uifigure;深圳=分类([1;3;4;2), 1:3, {“大”,“媒介”,“小”});num =[南;10;12;15);num tdata =表(深圳,“VariableNames”, {“大小”,“数量”});外的=场上(图,“数据”tdata,“ColumnEditable”,真正的);

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

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

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

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

另请参阅

|

相关的话题