Эти примеры показывают несколько способов передать данные от массива ячеек до функции MATLAB®, которая не распознает массивов ячеек входными параметрами.
{}
Этот пример создает массив ячеек, который содержит текст и 20 2 массив случайных чисел.
randCell = {'Random Data', rand(20,2)};
plot(randCell{1,2})
title(randCell{1,1})
Постройте только первый столбец данных путем индексации далее в содержимое (многоуровневая индексация).
figure
plot(randCell{1,2}(:,1))
title('First Column of Data')
cell2mat
Этот пример создает 5 2 массив ячеек, который хранит температурные данные для трех городов и строит температуры для каждого города по дате.
temperature(1,:) = {'2020-01-01', [45, 49, 0]}; temperature(2,:) = {'2020-04-03', [54, 68, 21]}; temperature(3,:) = {'2020-06-20', [72, 85, 53]}; temperature(4,:) = {'2020-09-15', [63, 81, 56]}; temperature(5,:) = {'2020-12-31', [38, 54, 18]}; allTemps = cell2mat(temperature(:,2)); dates = datetime(temperature(:,1)); plot(dates, allTemps)
Этот пример строит X
против Y
, и применяет стили линии от 2 3 массива ячеек C
.
X = -pi:pi/10:pi; Y = tan(sin(X)) - sin(tan(X)); C(:,1) = {'LineWidth'; 2}; C(:,2) = {'MarkerEdgeColor'; 'k'}; C(:,3) = {'MarkerFaceColor'; 'g'}; plot(X, Y, '--rs', C{:})