Только приложения App Designer и фигуры, созданные с функцией uifigure, поддерживают массивы table. Для получения информации об отображающихся табличных данных в традиционных фигурах смотрите Программное приложение который Отображения Таблица.
Табличные массивы полезны для того, чтобы хранить табличные данные как переменные MATLAB®. Например, можно вызвать функцию readtable, чтобы создать табличный массив из электронной таблицы.
Компоненты Table UI, в отличие от этого, являются компонентами пользовательского интерфейса, которые отображают табличные данные в приложениях. Начиная в R2018a, типы данных, которые можно отобразить в компоненте Table UI, включают табличные массивы.
Когда вы отображаете табличные данные массива в приложениях, можно использовать в своих интересах интерактивные функции для определенных типов данных. И различающиеся другие типы массивов, которые компоненты Table UI поддерживают, табличные данные массива, не отображаются согласно свойству ColumnFormat компонента Table UI.
В компоненте Table UI логические значения отображаются как флажки. значения true проверяются, тогда как значения false неконтролируемы. Когда свойством ColumnEditable компонента Table UI является true, пользователь может выбрать и снять флажки в приложении.
f = uifigure;
tdata = table([true; true; false]);
uit = uitable(f,'Data',tdata);
Значения categorical могут появиться как выпадающие списки или как текст. Категории появляются в выпадающих списках, когда свойством ColumnEditable компонента Table UI является true. В противном случае категории отображаются как текст без выпадающего списка.
f = uifigure;
cnames = categorical({'Blue';'Red'},{'Blue','Red'});
w = [400; 700];
tdata = table(cnames,w,'VariableNames',{'Color','Wavelength'});
uit = uitable(f,'Data',tdata,'ColumnEditable',true);
Если массив categorical не защищен, пользователи могут добавить новые категории в запущенном приложении путем ввода в ячейке.
Значения datetime отображаются согласно свойству Format соответствующей табличной переменной (массив datetime).
f = 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(f,'Data',tdata);

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

Чтобы изменить формат, используйте запись через точку, чтобы установить свойство Format табличной переменной.
tdata.Time.Format = 's';
uit.Data = tdata;
Ячейки, содержащие значения duration, не доступны для редактирования в запущенном приложении, даже когда ColumnEditable компонента Table UI является true.
Нескалярные значения отображают в приложении тот же путь, как они отображаются в Командном окне. Например, этот табличный массив содержит массивы struct и трехмерные массивы.
f = uifigure;
arr = {rand(3,3,3); rand(3,3,3)};
s = {struct; struct};
tdata = table(arr,s,'VariableNames',{'Array','Structure'});
uit = uitable(f,'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 0Компонент Table UI обеспечивает подобное представление. Выбор элемента в столбце RGB выбирает все подстолбцы в той строке. Значения в подстолбцах не доступны для редактирования в запущенном приложении, даже когда свойством ColumnEditable компонента Table UI является true.
f = uifigure;
uit = uitable(f,'Data',tdata);
Отсутствующие значения отображаются как индикаторы согласно типу данных:
Отсутствующие строки отображаются как <missing>.
Неопределенные значения categorical отображаются как <undefined>.
Недопустимые или неопределенные числа или значения duration отображаются как NaN.
Недопустимые или неопределенные значения datetime отображаются как NaT.
Если свойством ColumnEditable компонента Table UI является true, то пользователь может исправить значения в запущенном приложении.
f = 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(f,'Data',tdata,'ColumnEditable',true);
Это приложение показывает, как отобразить компонент Table UI в приложении, которое использует табличные данные массива. Табличный массив содержит numeric, logical, categorical и многостолбцовые переменные.
Обратный вызов StartupFcn загружает электронную таблицу в табличный массив. Затем подмножество отображений данных и построено график в приложении. Оба графика обновляют, когда пользователь редактирует значение в приложении.
