Как построить график в Matlab
График выводится автоматически.
Для редактирования графика переходим на Tools, далее Edit Plot
затем два раза нажимаем указателем мышки на график, появляются инструменты редактирования графика — Property Editor Line.
Здесь можно выбрать тип графика – plot type, цвет и толщину линии — Line, вид маркеров — Marker (промежуточных точек линии графика).
Также можно сделать линию графика пунктирной. Для этого указателем мыши наводим на график и нажимаем на правую клавишу мыши, появляется меню, выбираем Line style -> dash.
Пример построения в Matlab несколько графиков в одном окне на примере тригонометрических функций синуса.
4894
3.4 Несколько графиков в одном графическом окне.
MatLab предоставляет возможность разбить графическое окно на несколько подграфиков со своими осями. Для этого служит команда subplot, которая располагает графики в виде матрицы и используется с тремя параметрами: subplot(i, j, n), здесь i и j – число подграфиков по вертикали и горизонтали, а n – номер подграфика, который надо сделать текущим.
Например, построим графики функций
, , на отрезке .
3.5 Вывод графиков в отдельные окна.
В предыдущих примерах графики выводились в специальное графическое окно с заголовком Figure No.1. При следующем построении графика предыдущий пропадал, а новый выводился в то же самое окно. MatLab предоставляет возможность работы с несколькими графиками, выведенными в отдельные окна.
Команда figure, определенная в MatLab, служит для создания пустого графического окна и отображения его на экране. Окно становиться текущим, т.е. все последующие графические функции будут осуществлять построение графиков в этом окне. Для получения нового графического окна следует снова использовать figure. Например, выведем графики функций и в разные графические окна:
(Команда title осуществляет подписи графиков.)
Результат работы – создание двух графических окон: Figure No.1 с изображением функции и Figure No.2 с графиком функции . Окно Figure No.2 является текущим, т.к. оно было создано последним.
Построение графиков с двумя независимыми осями в Matlab
Статья будет полезна тем, кто оформляет графики в среде Matlab.
При подготовке графиков для публикации статей в научных журналах и различного рода отчетов, я довольно часто сталкивался с необходимостью построения нескольких кривых, относящихся каждая к своей оси — чтобы не перегружать статью графиками и не выходить за их лимит. Но для этого в Matlab до версии R2014a была лишь команда plotyy(X1,Y1,X2,Y2), которая имеет ряд неприятных особенностей, из-за которых приходилось пользоваться другими программами и делать все вручную, что во-первых, усложняет этот процесс с точки зрения единой стилистики, во-вторых требует большого количества времени, а в-третьих не позволяет оперативно вносить изменения.
К таким неприятным особенностям я бы отнес:
1. Отсутствие аналога hold on («родной» hold on работает не совсем корректно с plotyy). Для того, чтобы добавить более, чем 2 кривые необходимо использовать вот такую конструкцию:
Из этой конструкции вытекает неприятная особенность №2:
2. Размерности массивов, заключенных в квадратные скобки должны совпадать, т.к. из них формируются матрицы элементов. На практике такое бывает очень не часто.
3. Оформление серьезно страдает оттого, что нельзя программными методами изменить цвета и типы всех линий подряд, можно форматировать только набор линий, относящихся к конкретной оси (hLine1 и hLine2) — во всяком случае, я не смог. При этом, я не говорю сейчас об изменении параметров руками, т.е. редактированием в окне «figure» — только непосредственно кодом в .m-файле.
Резюмируя вышесказанное: plotyy() не очень хорошо подходит для отображения нескольких наборов графиков для разных осей. Разве что для простеньких зависимостей типа этих:
То ли дело команда yyaxes, появившаяся в версии Matlab R2014a. Вот тут уж нам стало где развернуться.
Рассказать о прелестях данной команды я бы хотел на своем примере. Задача состоит в том, что мне необходимо построить на одном графике 3 профиля температур (решения, полученные прямым численным методом, моментным методом и экспериментальные значения), относящихся к правой оси, и 3 профиля давлений, относящихся к левой оси. А также добавить стрелки и подписи.
Команды yyaxis left и yyaxis right позволяют справиться с этой задачей на раз. В чем, собственно, суть. В рамках одной figure мы можем построить любое количество графиков, привязав их к одной из осей. В рамках каждой из команд прекрасно работает все то же самое, что и для обычных графиков.
Структура рисунка в таком случае будет выглядеть так:
Наполнив эту структуру необходимым, получаем в результате:
Еще одна дополнительная фишка в подготовке графиков к печати — это их простое и удобное сохранение в любом, поддерживаемом Matlab-ом, формате. Для этого необходимо лишь добавить следующие строки:
Начиная с версии R2014a Matlab стал подходящей программой для подготовки графиков к публикации статей в различных научных журналах. Важным плюсом является очень хорошая гибкость этого инструмента, позволяющая обрабатывать результаты и представлять их в удобоваримом и красивом виде, в том числе и для т.н. «пакетной» обработки.
Как построить 2 графика на одном рисунке?
у меня код есть могу построить первый график сначала а потом заменить данные и построить второй график но отдельно хочу построить их вместе на одном рисунке как построить второй в конце есть Коментарии (у умножение строка 26 и 62 на 2 и изменение в 10 )
Вложения
matlab_rabochiy.rar (725 байт, 58 просмотров) |
Не строится два графика на одном рисунке
figure(‘name’,’log) loglog(f,Spectrum_Power, ‘b’); hold all; y53=(-5/3)*f;.
Как построить 2 трехмерных графика в одном окне
Графики строятся по отдельности, но хочу для сравнения вывести их в одном окне. Подскажите, что не.
2 графика на одном рисунке с 2 осями х и одной осью y
Здравствуйте. Есть 2 зависимости иксы разные, а игрики одинаковые: х1: 1, 5, 3, 2, 5, 6, 7 .
Построить на одном рисунке графики двух функций
построить на одном рисунке графики двух функций F(x), G(x), задав изменение x на отрезке с шагом.