2D и 3D-графики

Линейные графики

Чтобы построить двумерные графики, используйте plot функция. Например, постройте синусоидальную функцию по вектору с линейно распределёнными значениями значений от 0 до 2π:

x = linspace(0,2*pi);
y = sin(x);
plot(x,y)

Figure contains an axes object. The axes object contains an object of type line.

Можно подписать оси и добавить заголовок.

xlabel("x")
ylabel("sin(x)")
title("Plot of the Sine Function")

Figure contains an axes object. The axes object with title Plot of the Sine Function contains an object of type line.

Путем добавления третьего входного параметра в plot функция, можно построить те же переменные с помощью красной пунктирной линии.

plot(x,y,"r--")

Figure contains an axes object. The axes object contains an object of type line.

"r--" спецификация линии. Каждая спецификация может включать символы для цвета линии, стиля и маркера. Маркером является символ, который появляется в каждой нанесенной на график точке данных, такой как +O, или *. Например, "g:*" задает рисование зеленых точек линии с * маркеры.

Заметьте, что заголовки и метки, которые вы задали для первого графика, больше не находятся в окне текущей фигуры. По умолчанию MATLAB® очищает окно рисунка каждый раз, когда вы вызываете функцию построения графика, сбрасывая оси и другие элементы, чтобы подготовить отображение нового графика.

Чтобы добавить графики в существующее окно рисунка, используйте hold on. Пока вы не используете hold off или закройте окно, все графики появляются в окне текущей фигуры.

x = linspace(0,2*pi);
y = sin(x);
plot(x,y)

hold on

y2 = cos(x);
plot(x,y2,":")
legend("sin","cos")

hold off

Figure contains an axes object. The axes object contains 2 objects of type line. These objects represent sin, cos.

3-D Графики

3D графики обычно отображают поверхность, заданную функцией в двух переменных, z=f(x,y). Например, вычислить z=xe-x2-y2 учитывая векторы строки и столбца x и y с 20 точками каждый в области значений [-2,2].

x = linspace(-2,2,20);
y = x';
z = x .* exp(-x.^2 - y.^2);

Затем создайте объемную поверхностную диаграмму.

surf(x,y,z)

Figure contains an axes object. The axes object contains an object of type surface.

Оба surf функционируйте и его компаньон mesh отобразите поверхности в трех измерениях. surf отображения и соединительные линии и полигоны поверхности в цвете. mesh создает каркасные поверхности, которые окрашивают только соединительные линии.

Несколько графиков

Можно отобразить несколько графиков в различных частях того же окна с помощью любого tiledlayout или subplot.

tiledlayout функция была введена в R2019b и обеспечивает больше управления метками и располагающий с интервалами, чем subplot. Например, создайте размещение 2 на 2 в рамках окна рисунка. Затем вызовите nexttile каждый раз вы хотите график появиться в следующей области.

t = tiledlayout(2,2);
title(t,"Trigonometric Functions")
x = linspace(0,30);

nexttile
plot(x,sin(x))
title("Sine")

nexttile
plot(x,cos(x))
title("Cosine")

nexttile
plot(x,tan(x))
title("Tangent")

nexttile
plot(x,sec(x))
title("Secant")

Figure contains 4 axes objects. Axes object 1 with title Sine contains an object of type line. Axes object 2 with title Cosine contains an object of type line. Axes object 3 with title Tangent contains an object of type line. Axes object 4 with title Secant contains an object of type line.

Если вы используете релиз ранее, чем R2019b, смотрите subplot.