Табличные массивы полезны для того, чтобы хранить табличные данные как переменные MATLAB®. Например, можно вызвать readtable функция, чтобы создать табличный массив из электронной таблицы.
Table Компоненты пользовательского интерфейса, в отличие от этого, являются компонентами пользовательского интерфейса, которые отображают табличные данные в приложениях. Начиная в R2018a, типах данных можно отобразиться в Table Компонент пользовательского интерфейса включает табличные массивы. Только приложения App Designer и фигуры, созданные с uifigure функционируйте поддерживают table массивы.
Когда вы отображаете табличные данные массива в приложениях, можно использовать в своих интересах интерактивные функции для определенных типов данных. И различающиеся другие типы массивов, что Table Поддержка компонентов пользовательского интерфейса, табличные данные массива не отображаются согласно ColumnFormat свойство Table Компонент пользовательского интерфейса.
В Table Пользовательский интерфейс логические значения компонента отображается как флажки. true значения проверяются, тогда как false значения неконтролируемы. Когда ColumnEditable свойство Table Компонентом пользовательского интерфейса является true, пользователь может выбрать и снять флажки в приложении.
fig = uifigure; tdata = table([true; true; false]); uit = uitable(fig,'Data',tdata); uit.Position(3) = 130; uit.RowName = 'numbered';

categorical значения могут появиться как выпадающие списки или как текст. Категории появляются в выпадающих списках когда ColumnEditable свойство Table Компонентом пользовательского интерфейса является true. В противном случае категории отображаются как текст без выпадающего списка.
fig = uifigure;
cnames = categorical({'Blue';'Red'},{'Blue','Red'});
w = [400; 700];
tdata = table(cnames,w,'VariableNames',{'Color','Wavelength'});
uit = uitable(fig,'Data',tdata,'ColumnEditable',true);

Если categorical массив не защищен, пользователи могут добавить новые категории в запущенном приложении путем ввода в ячейке.
datetime значения отображаются согласно Format свойство соответствующей табличной переменной (datetime массив.
fig = uifigure; dates = datetime([2016,01,17; 2017,01,20],'Format','MM/dd/uuuu'); m = [10; 9]; tdata = table(dates,m,'VariableNames',{'Date','Measurement'}); uit = uitable(fig,'Data',tdata);

Чтобы изменить формат, используйте запись через точку, чтобы установить Format свойство табличной переменной. Затем замените данные в Table Компонент пользовательского интерфейса.
tdata.Date.Format = 'dd/MM/uuuu';
uit.Data = tdata;
Когда ColumnEditable свойство Table Компонентом пользовательского интерфейса является true, пользователи могут изменить значения даты в приложении. Когда столбец будет доступен для редактирования, приложение ожидает входные значения, которые соответствуют Format свойство datetime массив. Если пользователь вводит недопустимую дату, значением, отображенным в таблице, является NaT.
duration значения отображаются согласно Format свойство соответствующей табличной переменной (duration массив.
fig = uifigure; mtime = duration([0;0],[1;1],[20;30]); dist = [10.51; 10.92]; tdata = table(mtime,dist,'VariableNames',{'Time','Distance'}); uit = uitable(fig,'Data',tdata);

Чтобы изменить формат, используйте запись через точку, чтобы установить Format свойство табличной переменной.
tdata.Time.Format = 's';
uit.Data = tdata;
Ячейки, содержащие duration значения не доступны для редактирования в запущенном приложении, даже когда ColumnEditable из Table Компонентом пользовательского интерфейса является true.
Нескалярные значения отображают в приложении тот же путь, как они отображаются в Командном окне. Например, этот табличный массив содержит трехмерные массивы и struct массивы.
fig = uifigure;
arr = {rand(3,3,3); rand(3,3,3)};
s = {struct; struct};
tdata = table(arr,s,'VariableNames',{'Array','Structure'});
uit = uitable(fig,'Data',tdata);
Многостолбцовая табличная переменная типа массив отображается как объединенный столбец в приложении, как это делает в Командном окне. Например, RGB переменная в этом табличном массиве является массивом 3х3.
n = [1;2;3]; rgbs = [128 122 16; 0 66 155; 255 0 0]; tdata = table(n,rgbs,'VariableNames',{'ROI','RGB'})
tdata =
3×2 table
ROI RGB
___ _________________
1 128 122 16
2 0 66 155
3 255 0 0Table Компонент пользовательского интерфейса обеспечивает подобное представление. Выбор элемента в RGB столбец выбирает все подстолбцы в той строке. Значения в подстолбцах не доступны для редактирования в запущенном приложении, даже когда ColumnEditable свойство Table Компонентом пользовательского интерфейса является true.
fig = uifigure;
uit = uitable(fig,'Data',tdata);
Отсутствующие значения отображаются как индикаторы согласно типу данных:
Отсутствующие строки отображаются как <missing>.
Неопределенный categorical значения отображаются как <undefined>.
Недопустимые или неопределенные числа или duration значения отображаются как NaN.
Недопустимый или неопределенный datetime значения отображаются как NaT.
Если ColumnEditable свойство Table Компонентом пользовательского интерфейса является true, затем пользователь может откорректировать значения в запущенном приложении.
fig = uifigure;
sz = categorical([1; 3; 4; 2],1:3,{'Large','Medium','Small'});
num = [NaN; 10; 12; 15];
tdata = table(sz,num,'VariableNames',{'Size','Number'});
uit = uitable(fig,'Data',tdata,'ColumnEditable',true);
Это приложение показывает, как отобразить Table Компонент пользовательского интерфейса в приложении, которое использует табличные данные массива. Табличный массив содержит numericлогическийкатегориальный, и многостолбцовые переменные.
StartupFcn коллбэк загружает электронную таблицу в табличный массив. Затем подмножество отображений данных и построено в приложении. Один график отображает исходные табличные данные. Другой график первоначально показывает те же табличные данные, и затем обновляется, когда пользователь редактирует значение или сортирует столбец в Table Компонент пользовательского интерфейса.
