Можно построить графики несколькими способами. Постройте графики в тех же осях или создайте несколько осей в фигуре, использующей подграфики.
По умолчанию новые графики очищают существующие графики и сбрасывают свойства осей, такие как заголовок. Однако можно использовать команду hold on
, чтобы построить несколько графиков в тех же осях. Например, постройте два графика и график рассеивания. После отключите удержание командой hold off.
x = linspace(0,10,50); y1 = sin(x); plot(x,y1) title('Combine Plots') hold on y2 = sin(x/2); plot(x,y2) y3 = 2*sin(x); scatter(x,y3) hold off
Когда состояние удержания включено, новые графики не очищают существующие графики или сбрасывают свойства осей, такие как заголовок или подписи по осям. Цикл графиков через цвета и линии разрабатывает на основе свойств ColorOrder
и LineStyleOrder
осей. Пределы осей и значения деления могут настроить, чтобы хранить новые данные.
Создайте несколько осей на одной фигуре с помощью функции subplot
, которая делит фигуру на сетку подграфиков. Первые два входных параметров к subplot
указывают на количество подграфиков в каждой строке и столбце. Третий вход задает, какой подграфик активен. Положения подграфика цифр MATLAB строкой. Графические функции, такие как plot
и title
, предназначаются для активного подграфика.
Например, создайте два сложенных подграфика в 2 1 сетка в рамках окна рисунка. Добавьте заголовок на каждый подграфик.
subplot(2,1,1); x = linspace(0,10,50); y1 = sin(x); plot(x,y1) title('Subplot 1') subplot(2,1,2); y2 = rand(50,1); scatter(x,y2) title('Subplot 2')
Чтобы создать подграфик, который охватывает несколько положений сетки, задайте третий входной параметр к функции subplot
как массив положений. Например, создайте сетку 2 на 2 подграфиков. Создайте два подграфика в верхней части фигуры и один подграфик, который охватывает целую нижнюю половину.
figure subplot(2,2,1); x = linspace(0,10,50); y1 = sin(x); plot(x,y1) subplot(2,2,2); y2 = rand(50,1); scatter(x,y2) subplot(2,2,[3 4]); y3 = rand(50,1); plot(x,y2)
Измените внешний вид подграфика путем установки свойств базового объекта Axes
. Доступ к объекту Axes
с помощью выходного аргумента от функции subplot
. Также можно использовать объекты Axes
в качестве первого входного параметра к графическим функциям, чтобы гарантировать, что функция предназначается для правильного подграфика.
Например, создайте два подграфика и присвойте объекты Axes
переменным ax1
и ax2
. Измените размер шрифта осей и цвет оси X для первого подграфика. Добавьте линии сетки во второй подграфик.
figure ax1 = subplot(2,1,1); x = linspace(0,10,50); y1 = sin(x); plot(ax1,x,y1) title(ax1,'Subplot 1') ax1.FontSize = 14; ax1.XColor = 'red'; ax2 = subplot(2,1,2); y2 = rand(50,1); scatter(ax2,x,y2) title(ax2,'Subplot 2') grid(ax2,'on')
Когда вы создаете фигуру с подграфиками, вы можете хотеть добавить заголовок, который применяется ко всем подграфикам. Начиная в R2018b, можно использовать функцию sgtitle
, чтобы добавить заголовок на сетку подграфиков.
subplot(2,1,1); x = linspace(0,10,50); y1 = sin(x); plot(x,y1) title('Subplot 1') subplot(2,1,2); y2 = rand(50,1); scatter(x,y2) title('Subplot 2') sgtitle('My Subplot Grid Title')