Мозаичное размещение графика позволяет вам управлять размещением элементов в визуализации и создать специальные эффекты. Эта тема покрывает четыре примера:
Мозаичные размещения графика имеют несколько функций представления нескольких элементов вместе в соответствии с разделяемым заголовком. В этом случае сложите шкалу палитры сверху графика в соответствии с разделяемым заголовком.
Создайте 1
- 1
мозаичное размещение графика. Затем отобразите контурный график peaks
набор данных.
figure t = tiledlayout(1,1); nexttile contourf(peaks)
Создайте шкалу палитры и задайте 'northoutside'
местоположение . Затем добавьте разделяемый заголовок путем передачи объекта размещения, t
, к title
функция.
cb = colorbar('Location','northoutside'); title(t,'Contours of Peaks')
Могут быть вложены мозаичные размещения графика. Это полезно для варьирования расположения мозаик в размещении. В этом случае создайте два столбца, что у каждого есть различное количество мозаик.
Создайте 1 2 мозаичное размещение под названием t1
. Затем создайте два вложенных размещения, t2
и t3
, где t2
находится в первой мозаике t1
, и t3
находится во второй мозаике. Затем отобразите два контурных графика в t2
, и добавьте заголовок выше графиков.
figure t1 = tiledlayout(1,2,'TileSpacing','Compact'); t2 = tiledlayout(t1,'flow','TileSpacing','Compact'); t3 = tiledlayout(t1,'flow','TileSpacing','Compact'); t3.Layout.Tile = 2; % Add two contour plots to left side [X,Y,Z] = peaks; nexttile(t2); contourf(X,Y,Z) nexttile(t2) contourf(X,Y,Z,10) title(t2,"Contours of Peaks")
Отобразите три линейных графика в t3
, и добавьте заголовок.
nexttile(t3)
plot(Z(15,:))
nexttile(t3)
plot(Z(25,:))
nexttile(t3)
plot(Z(35,:))
title(t3,"Y = -1.25, 0, and 1.25")
Мозаичное размещение графика состоит из сетки мозаик, окруженных четырьмя внешними мозаиками. Можно поместить легенды, шкалы палитры, дополнительные оси, или даже вложенное размещение в любую из этих мозаик. В этом случае создайте основной график в центре и используйте одну из внешних мозаик, чтобы отобразить набор дополнительных графиков.
Во-первых, создайте матрицу синусоид и постройте их вместе в 1
- 1
мозаичное размещение графика.
x = (0:0.1:10)'; y = sin([x x+1 x+2 x+3 x+4 x+5]); figure t = tiledlayout(1,1); nexttile plot(x,y)
Постройте отдельные синусоиды ниже основного графика. Для этого создайте новое размещение под названием ts
в южной мозаике размещения t
. Когда вы создаете ts
, задайте 'flow'
расположение мозаики так, чтобы графики заполнили целую южную мозаику в каждой итерации for
цикл.
ts = tiledlayout(t,'flow'); ts.Layout.Tile = 'south'; for i=1:5 nexttile(ts); plot(x,y(:,i)) end
График может охватить несколько мозаик размещения. Можно использовать эту функцию, чтобы отобразить основной график с графиком вставки сопровождения. В этом случае график вставки показывает увеличившему масштаб представление необходимой области.
Создайте 3х3 мозаичное размещение графика и создайте оси, который охватывает все мозаики. Затем отобразите график рассеивания в осях.
figure t = tiledlayout(3,3,'Padding','compact'); ax1 = nexttile(1,[3 3]); x = randn(2000,1); y = randn(2000,1); scatter(ax1,x,y,1,'filled');
Затем создайте прямоугольник, который задает необходимую область в графике рассеивания. Установите свойства на осях в последний раз, чтобы гарантировать, что те свойства сохраняются.
Задайте границы прямоугольника. Задайте left
и bottom
как левые края и базовые края прямоугольника. Задайте left
в модулях оси X, и задают bottom
в модулях оси Y. Точно так же задайте width
и height
как ширина и высота прямоугольника, также в модулях оси.
Отобразите прямоугольник. Вызовите hold
функционируйте, чтобы сохранить содержимое осей, и затем вызвать rectangle
функция.
Установите свойства на осях. Установите размер шрифта на 10
точки, набор x-и пределы оси Y, и включают сетку.
% Define bounds of the rectangle left = -0.5; bottom = -0.7; width = 0.4; height = 0.4; % Display the rectangle hold(ax1,'on'); r = rectangle('Position',[left bottom width height], ... 'EdgeColor','red','LineWidth',1.5); % Set properties on the axes ax1.FontSize = 10; ax1.XLim = [-4.5 4.5]; ax1.YLim = [-4.5 4.5]; grid(ax1,'on')
Отобразите меньшее, увеличил масштаб график с x-и пределами оси Y, которые совпадают с необходимой областью.
Создайте оси для увеличившего масштаб представление. Вызовите axes
функция, чтобы создать оси. Переместите оси в третью мозаику путем установки Layout.Tile
свойство. Затем постройте целое множество x и y данные.
Настройте пределы по осям, чтобы совпадать с необходимой областью. Установите XLim
и YLim
свойства ax2
совпадать с необходимой областью. Затем удалите метки деления из поля графика.
Установите другие свойства на осях. Включите поле осей, установите x-и y-цвета оси к красному, и отобразите заголовок.
% Create axes for zoomed-in view ax2 = axes(t); ax2.Layout.Tile = 3; scatter(ax2,x,y,10,'filled'); % Adjust axis limits and remove ticks ax2.XLim = [left left+width]; ax2.YLim = [bottom bottom+height]; ax2.XTick = []; ax2.YTick = []; % Set other properties on the axes ax2.Box = 'on'; ax2.XAxis.Color = 'red'; ax2.YAxis.Color = 'red'; title(ax2,'100x Magnification','Color','red');
tiledlayout
| colorbar
| axes