В этом примере показано несколько способов визуализации четырехмерных (4-D) данных в MATLAB ®.
Иногда данные имеют переменную, которая дискретна и имеет лишь несколько возможных значений. Можно создать несколько графиков одного типа для данных в каждой дискретной группе. Например, используйте stem3 функция, чтобы увидеть связь между тремя переменными, где четвертая переменная делит население на дискретные группы.
load patients Smoker Age Weight Systolic % load data nsIdx = Smoker == 0; smIdx = Smoker == 1; figure stem3(Age(nsIdx), Weight(nsIdx), Systolic(nsIdx), 'Color', 'b') % stem plot for non-smokers hold on stem3(Age(smIdx), Weight(smIdx), Systolic(smIdx), 'Color', 'r') % stem plot for smokers hold off view(-60,15) zlim([100 140]) xlabel('Age') % add labels and a legend ylabel('Weight') zlabel('Systolic Blood Pressure') legend('Non-Smoker', 'Smoker', 'Location', 'NorthWest')

С помощью большого набора данных можно проверить корреляцию отдельных переменных. Вы можете использовать plotmatrix создание матрицы n на n графиков для просмотра парных отношений между переменными. plotmatrix функция возвращает два выхода. Первый вывод является матрицей линейных объектов, используемых в диаграммах рассеяния. Вторая - матрица создаваемых объектов осей.
plotmatrix также может использоваться для наборов данных более высокого порядка.
load patients Height Weight Diastolic Systolic % load data labels = {'Height' 'Weight' 'Diastolic' 'Systolic'}; data = [Height Weight Systolic Diastolic]; [h,ax] = plotmatrix(data); % create a 4 x 4 matrix of plots for i = 1:4 % label the plots xlabel(ax(4,i), labels{i}) ylabel(ax(i,1), labels{i}) end

Для многих видов четырехмерных данных можно использовать цвет для представления четвертого размера. Это хорошо работает, если у вас есть функция трех переменных.
Например, представить смертность на шоссе в Соединенных Штатах как функцию долготы, широты и если местоположение является сельским или городским. Значения x, y и z на графике представляют эти три переменные. Цвет представляет количество погибших на шоссе.
cla load accidents hwydata % load data long = -hwydata(:,2); % longitude data lat = hwydata(:,3); % latitude data rural = 100 - hwydata(:,17); % percent rural data fatalities = hwydata(:,11); % fatalities data scatter3(long,lat,rural,40,fatalities,'filled') % draw the scatter plot ax = gca; ax.XDir = 'reverse'; view(-31,14) xlabel('W. Longitude') ylabel('N. Latitude') zlabel('% Rural Population') cb = colorbar; % create and label the colorbar cb.Label.String = 'Fatalities per 100M vehicle-miles';

Данные могут содержать измеренное значение для физического объекта, например температуру в трубе. В этом случае физические размеры могут быть представлены в виде объема с цветом, используемым для представления величины измерения. Например, используйте slice для отображения значения измеряемой переменной в поперечных сечениях в объеме.
load fluidtemp x y z temp % load data xslice = [5 9.9]; % define the cross sections to view yslice = 3; zslice = ([-3 0]); slice(x, y, z, temp, xslice, yslice, zslice) % display the slices ylim([-3 3]) view(-34,24) cb = colorbar; % create and label the colorbar cb.Label.String = 'Temperature, C';

Комплексная функция имеет вход с вещественной и мнимой частями и выход с вещественной и мнимой частями. Для представления сложной функции можно использовать трехмерный график с цветом. В этом случае оси x и y представляют действительную и мнимую части входного сигнала. Ось z представляет действительную часть выходного сигнала, а цвет - мнимую часть выходного сигнала.
r = (0:0.025:1)'; % create a matrix of complex inputs theta = pi*(-1:0.05:1); z = r*exp(1i*theta); w = z.^3; % calculate the complex outputs surf(real(z),imag(z),real(w),imag(w)) % visualize the complex function using surf xlabel('Real(z)') ylabel('Imag(z)') zlabel('Real(w)') cb = colorbar; cb.Label.String = 'Imag(w)';
