Существует несколько способов. Привожу два наиболее часто используемых примера и результаты выполнения этих скриптов:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
%% Как построить несколько графиков в matlab? % несколько графиков на одних осях x = (1:10); % создаём массив х y1 = [10 3 6 5.3 17 -8 3 2 12 1]; % задаём первый график, например, по точкам y2 = -x.^2+60; % задаём второй график через функцию y3 = y1+y2; % сумма первых двух графиков plot(x, y1, '.-'); % строим первый график grid on; % включение отображения сетки hold all; % для возможности построения нескольких графиков на одной фигуре % если этого не сделать, то на экране будет виден только последний % отрисованный график plot(x, y2, '.-'); % строим второй график plot(x, y3, '.-'); % строим третий график title('Название графика'); xlabel('Подпись оси х'); ylabel('Подпись оси у'); legend('Легенда 1', 'Легенда 2', 'Легенда 3'); saveas(gca, 'many_graph3.jpg'); % сохранение графика в файл |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
%% несколько графиков на разных осях % необходимо подписывать каждый график отдельно так как они будут построены % в своих отдельных осях figure; subplot(3,1,1); plot(x, y1, '.-'); grid on; % строим первый график title('Название графика 1'); xlabel('Подпись оси х'); ylabel('Подпись оси у'); legend('Легенда 1'); subplot(3,1,2); plot(x, y2, '.-'); grid on; title('Название графика 2'); xlabel('Подпись оси х'); ylabel('Подпись оси у'); legend('Легенда 2'); subplot(3,1,3); plot(x, y3, '.-'); grid on; title('Название графика 3'); xlabel('Подпись оси х'); ylabel('Подпись оси у'); legend('Легенда 3'); saveas(gca, 'many_graph_solo_3.jpg'); % сохранение графика в файл |
@fidel
Для построения нескольких графиков в MATLAB можно использовать функцию subplot.
Например, если есть два массива данных x и y1 и y2, представляющие две функции, то можно построить два графика на одной фигуре следующим образом:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
x = 0:pi/100:2*pi; y1 = sin(x); y2 = cos(x); figure subplot(2,1,1) plot(x,y1) title('y = sin(x)') xlabel('x') ylabel('y') subplot(2,1,2) plot(x,y2) title('y = cos(x)') xlabel('x') ylabel('y') |
Здесь функция subplot(2,1,1) указывает, что будет построен первый график в верхней половине фигуры, а subplot(2,1,2) - в нижней. Параметры xlabel, ylabel и title задают подписи к осям и заголовок графика.
В этом примере используется разметка 2x1, что означает два графика, расположенных вертикально. Если была бы выбрана разметка 1x2, то графики были бы расположены горизонтально.
Также можно указать разные типы графиков, например, ****ter, bar, histogram, и т.д.