Форум MATLAB и Simulink
Построение графика на определенном интервале
Обсуждение вопросов, связанных с другими тулбоксами
Модератор: Admin
Devo4kaShura Пользователь Сообщения: 35 Зарегистрирован: Вт янв 24, 2012 12:35 am
Построение графика на определенном интервале
Сообщение Devo4kaShura » Ср фев 08, 2012 12:14 am
Добрый вечер!
Подскажите пожалуйста как задать интервал принадлежности числу! Мне нужно построить график плотности распределения чисел при условии, что число принадлежит интервалу. Например, х(i)=rand(1,100); plot(x)
x(i) принадлежит интервалу на графике от А до В. А и В какие-то границы.
Напишите пожалуйста, как это задать! Спасибо заранее!
Не судите строго новичка!
iglin Эксперт Сообщения: 1584 Зарегистрирован: Ср сен 22, 2004 4:49 pm
Re: Построение графика на определенном интервале
Сообщение iglin » Чт фев 09, 2012 9:28 am
Уточните вопрос. Вам нужно ЗАДАТЬ случайные числа на интервале [A,B] или НАРИСОВАТЬ? В первом случае — help unifrnd, во втором — help xlim.
Devo4kaShura Пользователь Сообщения: 35 Зарегистрирован: Вт янв 24, 2012 12:35 am
Re: Построение графика на определенном интервале
Сообщение Devo4kaShura » Чт фев 09, 2012 9:51 am
clc;
n=10;
i=1:n;
a=-0.5; b=0.5;
v(i)=a+(b-a)*rand(1,n);
c=0.1; X(i)=v(i+1)+c*v(i);
figure; plot(X)
figure; hist(X,20)
v(i) — числа равномерно сгенерированные. Эти числа принадлежат диапазону от -0,5 до 0,5. Из этой v последовательности получается последовательность X(i). Мне нужно нарисовать график плотности этой последовательности (Х), но задать условие, что каждое число X(i) принадлежит на графике от -0,5+с*v(i) до 0.5+c*x(i-1).
Спасибо!
Devo4kaShura Пользователь Сообщения: 35 Зарегистрирован: Вт янв 24, 2012 12:35 am
Re: Построение графика на определенном интервале
Сообщение Devo4kaShura » Чт фев 09, 2012 1:31 pm
iglin писал(а): Уточните вопрос. Вам нужно ЗАДАТЬ случайные числа на интервале [A,B] или НАРИСОВАТЬ? В первом случае — help unifrnd, во втором — help xlim.
Случайные числа по умолчанию задались на интервале (rand).
Прочтите, пожалуйста, мой предыдущий ответ на Ваш вопрос!
Не судите строго новичка!
Devo4kaShura Пользователь Сообщения: 35 Зарегистрирован: Вт янв 24, 2012 12:35 am
Re: Построение графика на определенном интервале
Сообщение Devo4kaShura » Чт фев 09, 2012 1:43 pm
iglin писал(а): Уточните вопрос. Вам нужно ЗАДАТЬ случайные числа на интервале [A,B] или НАРИСОВАТЬ? В первом случае — help unifrnd, во втором — help xlim.
clc;
n=10;
i=1:n;
a=-0.5; b=0.5;
v(i)=a+(b-a)*rand(1,n);
v(n+1)=0;
c=0.1; X(i)=v(i+1)+c*v(i);
figure; hist(X,20)
v(i) — числа равномерно сгенерированные. Эти числа принадлежат диапазону от -0,5 до 0,5. Из этой v последовательности получается последовательность X(i). Мне нужно нарисовать график плотности этой последовательности (hist(Х), но задать условие, что каждое число X(i) принадлежит на графике от -0,5+с*v(i) до 0.5+c*x(i-1).
Как это задать? тобы каждое число принадлежит интервалу. Спасибо!
Не судите строго новичка!
iglin Эксперт Сообщения: 1584 Зарегистрирован: Ср сен 22, 2004 4:49 pm
Re: Построение графика на определенном интервале
Сообщение iglin » Пт фев 10, 2012 5:05 pm
Попробуйте так:
>> n=1000;
>> c=0.1;
>> a=-0.5;
>> b=0.5;
>> v=[unifrnd(a,b,1,n) 0];
>> X=v(2:end)+c*v(1:end-1);
>> hist(X,20)
>> [nc,xc]=hist(X,20)
но задать условие, что каждое число X(i) принадлежит на графике от -0,5+с*v(i) до 0.5+c*x(i-1).
Как это задать? тобы каждое число принадлежит интервалу.
Наверное, от -0,5+с*v(i-1) до 0.5+c*v(i-1)? Если так, то оно и так всегда будет принадлежать этому интервалу. Если же так, как вы пишите, то возникает вопрос: а что нужно будет сделать, если X(i) не принадлежит этому интервалу? Отбросить? Или просто пометить?
Devo4kaShura Пользователь Сообщения: 35 Зарегистрирован: Вт янв 24, 2012 12:35 am
Re: Построение графика на определенном интервале
Сообщение Devo4kaShura » Пт фев 10, 2012 8:38 pm
но задать условие, что каждое число X(i) принадлежит на графике от -0,5+с*v(i) до 0.5+c*x(i-1).
Как это задать? тобы каждое число принадлежит интервалу.
Наверное, от -0,5+с*v(i-1) до 0.5+c*v(i-1)? Если так, то оно и так всегда будет принадлежать этому интервалу. Если же так, как вы пишите, то возникает вопрос: а что нужно будет сделать, если X(i) не принадлежит этому интервалу? Отбросить? Или просто пометить?
С.П. Иглин, спасибо большое! Но эту часть я уже сделала! Сорри, там действительно опечатка! Границы нужно задать от -0,5+с*Х(i-1) до 0.5+c*Х(i-1). Нужно задать условие. чтобы каждое число Х(i) принадлежало этим границам! Построить гистограмму Х.
Задайте, пожалуйста, это условие! Как это сделать. Не получаается у меня(((( Насчет принадлежности X(i) интервалу не надо думать. Преподаватель, говорит. что всегда попадает. так как Х(i) получается из v(i), которое равномерно распределено на отрезке от -0,5 до 0,5. И X(i)=v(i)+c*v(i-1). В общем, не надо копаться в этом. Просто нужно задать границы для каждого Х(i) от -0,5+с*Х(i-1) до 0.5+c*Х(i-1) и построить гистограмму! Сделайте пожалуйста! Срочно нужно! Варюсь в этом, но безрезультатно!
Вот как я сделала ту часть, которую Вы написали. clc;
n=30;
i=1:n;
a=-0.5; b=0.5; c=0.1;
v(i)=a+(b-a)*rand(1,n);
v(n+1)=0;
X(i)=v(i+1)+c*v(i);
hist(X)
Для гистограммы hist (X) необходимо задать условие.
Не понимаю, как задать. Матлаб ругается насчет индексов и вообще не получается! Может нужно ввести новую переменную или операторы условия применить? Х(i)=[(-(b-a)/2+c*X(i-1)) : ((b-a)/2+c*X(i-1))];
Как правильно задать интервал в M-файле
Как задать интервал функции x в Gnuplot
Всем привет! Подскажите пожалуйста как задать интервал функции x в гнуплоте. Не осей, а именно.
Как правильно задать условие
Доброго времени суток форумчане. Каким образом можно задать условие, "первый будний день месяца".
Как правильно задать передаточную функцию?
Имеется САУ следующего вида: Насколько я понял, передаточная функция разомкнутой системы.
Как правильно задать функцию в Матлаб
Написал следующую функцию: function z = opt(x) %UNTITLED Summary of this funct .
Решить уравнение на интервале в матлаб
Доброго времени суток. В этой статье мы разберем решение простых нелинейных уравнений с помощью средств Matlab. Посмотрим в действии как стандартные функции, так и сами запрограммируем три распространенных метода для решения нелинейных уравнений.
Общая информация
Уравнения, которые содержат переменные, находящиеся в степенях, отличающихся от единицы, или имеющие нелинейные математические выражения (корень, экспонента, логарифм, синус, косинус и т.д.), а также имеющие вид f(x) = 0 называются нелинейными. В зависимости от сложности такого уравнения применяют методы для решения нелинейных уравнений.
В этой статье, помимо стандартных функций Matlab, мы рассмотрим следующие методы:
- Метод перебора
- Метод простых итераций
- Метод половинного деления
Рассмотрим коротко их алгоритмы и применим для решения конкретной задачи.
Стандартные функции Matlab
Для решения нелинейных уравнений в Matlab есть функция fzero. Она принимает в качестве аргументов саму функцию, которую решаем, и отрезок, на котором происходит поиск корней нелинейного уравнения.
И сразу же разберем пример:
Решить нелинейное уравнение x = exp(-x), предварительно определив интервалы, на которых существуют решения уравнения.
Итак, для начала следует привести уравнение к нужному виду: x — exp(-x) = 0 , а затем определить интервалы, в которых будем искать решение уравнения. Методов для определения интервалов множество, но так как пример достаточно прост мы воспользуемся графическим методом.

Здесь задали примерные границы по оси x, чтобы можно было построить график и посмотреть как ведет себя функция. Вот график:
Из графика видно, что на отрезке [0;1] есть корень уравнения (там, где y = 0), соответственно в дальнейшем будем использовать этот интервал. Чем точнее выбран интервал, тем быстрее метод придет к решению уравнения, а для сложных уравнений правильный выбор интервала определяет погрешность, с которой будет получен ответ.
С помощью стандартной функции Matlab находим корень нелинейного уравнения и выводим. Теперь для проверки отобразим все это графически:

Как вы видите, все достаточно точно просчиталось. Теперь мы исследуем эту же функцию с помощью других методов и сравним полученные результаты.
Метод перебора Matlab
Самый простой метод, который заключается в том, что сначала задается какое то приближение x (желательно слева от предполагаемого корня) и значение шага h. Затем, пока выполняется условие f(x) * f(x + h) > 0, значение x увеличивается на значение шага x = x + h. Как только условие перестало выполняться — это значит, что решение нелинейного уравнения находится на интервале [x; x + h].
Теперь реализуем метод перебора в Matlab:
Лучше всего создать новый m-файл, в котором и прописать код. После вызова получаем такой вывод:
Функцию объявляем с помощью очень полезной команды inline, в цикле пока выполняется условие отсутствия корней (или их четного количества), прибавляем к x значение шага. Очевидно, что чем точнее начальное приближение, тем меньше итераций необходимо затратить.
Метод простых итераций Matlab
Этот метод заключается в том, что функцию преобразуют к виду: x = g(x). Эти преобразования можно сделать разными способами, в зависимости от вида начальной функции. Помимо этого следует задать интервал, в котором и будет производиться итерационный процесс, а также начальное приближение. Сам процесс строится по схеме xn= g(xn-1). То есть итерационно проходим от предыдущего значения к последующему.
Процесс заканчивается как только выполнится условие: , то есть, как только будет достигнута заданная точность. И сразу же разберем реализацию метода простых итераций в Matlab для примера, который был приведен выше.
Здесь должно быть все понятно, кроме одного: зачем задавать число итераций? Это нужно для того, чтобы программа не зацикливалась и не выполняла ненужные итерации, а также потому что не всегда программа может просчитать решение с нужной точностью — поэтому следует ограничивать число итераций.
А вот и вывод программы:
Очевидно, что метод простых итераций работает гораздо быстрее и получает точное решение.
Метод половинного деления Matlab
Метод достаточно прост: существует отрезок поиска решения [a;b], сначала находят значение функции в точке середины c, где c = (a+b)/2. Затем сравнивают знаки f(a) и f(c). Если знаки разные — то решение находится на отрезке [a;c], если нет — то решение находится на отрезке [c;b]. Таким образом мы сократили область в 2 раза. Такое сокращение происходит и дальше, пока не достигнем заданной точности.
Перейдем к реализации метода в Matlab:
Все самое важное происходит в цикле: последовательно сокращаем область нахождения решения, пока не будет достигнута заданная точность.
Вот что получилось в выводе:
Этот метод хорошо работает, когда правильно определен интервал, на котором находится решение. Тем не менее, метод простых итераций считается наиболее точным и быстрым.
Заключение
Сегодня мы рассмотрели решение нелинейных уравнений в Matlab. Теперь нам известны методы перебора, половинного деления, простых итераций. А также, когда нам не важно реализация метода, то можно использовать стандартную функцию в Matlab.
На этом все — спасибо за внимание. В следующей статье мы разберем решение систем нелинейных уравнений в matlab.
Численные методы решения уравнений в среде MatLab
В этом посте я расскажу о численных методах решения уравнений, что очень удобно для их расчёта на компьютере. Приведу 3 вида и 3 примера кода, для каждого вида соответственно, а также расскажу о предостерегающих трудностях и путях их решения.
Иногда нам приходится решать уравнения, кому-то по работе, а кому-то понадобилась для домашних нужд — назовём это так. В школе нас учили, что для решения уравнения, необходимо выразить искомую переменную и тогда мы получим символьное решение уравнения, а если вместо букв поставить числа, то получим численное решение того или иного уравнения. Однако, бывают такие уравнения, в которых нельзя явно выразить искомую переменную, например, уравнение ниже.
Решать такие уравнения приходиться численно, то есть получая ответ в виде числа, а если вам нужна зависимость, то придётся задать диапазон начальных условий и получить, соответственно, диапазон значений искомого параметра.
Предлагаю вам ознакомиться с моей презентацией, а после чего прочитать комментарии и пояснения к ней ниже. Также, в конце записи я опубликовал листинги программ для расчёта указанными методами в среде MatLab.
При решении уравнений 2 или 3 типа, может возникнуть ситуация , когда из большого шага между двумя значениями x и(или) y, мы можем не достичь требуемой точности и тогда результат будет не предсказуем. Для избежания таких случаев предлагаю использовать не сравнение результата с заданным уровнем точности, а сравнение точностей для каждого значения переменной и выбор значения с наибольшей точностью. Подробнее расскажу на примере кода. Рекомендую использовать следующей алгоритм действий для уравнений типа f(x)=const:
- разбиваете заданный диапазон значений на n равных интервалов и получаете n+1 значений x
- решаете уравнение для каждого значения х
- выбираете то значение хi, при котором точность максимальна.
- из п. 3 следует, что точное решение находится между хi-1 и хi+1. Устанавливаете новый диапазон значений для x от хi-1 до хi+1, сохраняя то же число интервалов.
- Вновь расчитываете уравнение для нового интервала с новым шагом
- Повторяете указанные действия до тех пор, пока интервал значений х не будет достаточно мал, чтобы получить требуемую точность вычислений.
Аналогичный алгоритм, лишь с некоторым поправками, можно использовать и для решения уравнений вида f(x,y)=y.
Листинг программы для решения уравнений вида f(x)=x в среде MatLab
Если кому интересно, то ниже производится решение следующего уравнения относительно γ.

Листинг программы для решения уравнений вида f(x,y)=y в среде MatLab
Этот код решает следующее уравнение относительно θ.

На выходе данной программы получаем массив значений угла θ. Границы диапазона θ от 61.7 до 61.8 найдены путём последовательных приближений. Сначала уравнение решалось для всех гамма в пределах угла от 1 до 90 с шагом в 1 градус, затем диапазон сужался по тому же принципу, что и в случае с предыдущем кодом, и действия повторялись до достижения требуемой точности.
Если у вас есть какие-либо вопросы, замечания или предложения, то их в комментариях к данному посту! Удачных вам математических расчётов!
Решение систем обыкновенных дифференциальных уравнений в среде MATLAB. Часть 1
В среде MATLAB можно решать системы диффуров с начальными условиями, краевые задачи, а также решать дифференциальные уравнения в частных производных с помощью инструмента PDE toolbox.
В данном обзоре речь пойдет лишь о системах дифференциальных уравнений с начальными условиями, то есть о задаче Коши. В англоязычной литературе это называется Initial Value Problem.
- каким образом записывать системы диффуров
- как задать начальные условия
- временной интервал
- какой получать результат решения для дальнего использования
Решать системы обыкновенных дифференциальных уравнений можно как в MATLAB, так и в Simulink.
В первую очередь, следует определиться, использовать для решения Matlab и его текстовый редактор, или Simulink, где те же системы дифференциальных уравнений могут быть записаны в виде функциональных блоков.
Выбор ваш должен зависеть от задачи. Если Вы, например, хотите смоделировать какой-либо объект управления, описываемый системой диффуров, то в данном случае имеет смысл использовать именно Simulink, так как Вам, впоследствии, понадобиться синтез, например, системы управления, и Simulink подойдет здесь как нельзя лучше.
А вот если у Вас, например, есть необходимость решать системы диффуров с большим количеством уравнений и неизвестных, или специфика Вашей задачи требует особой и специальной настройки численного метода, а также если вы хотите использовать решение диффура в составе других скриптов MATLAB, то Вам имеет смысл решать дифференциальные уравнения способом, о котором пойдёт речь в этом обзоре.
Рассмотрим синтаксис решателей matlab.В качестве аргументов следует подать правую часть системы в виде MATLAB-функции.
На рисунке показан требуемый вид системы, когда выражены старшие производные.
Системы, чей вид отличается от требуемого, следует преобразовать к таковому.
Если функция простая, то её можно записать прямо в поле аргумента, однако, когда речь идёт о системах уравнений, имеет смысл записывать систему уравнений в виде отдельной функции, в том числе и в виде отдельного м-файла. Об этом мы поговорим чуть позже и на конкретном примере.
Также подается интервал времени, на котором будет найдено решение. Интервал задаётся строкой из двух чисел: начальной величины независимого аргумента t и его конечного значения.
Далее задаются начальные условия. Значения всех неизвестных искомых переменных в начале расчёта задаются в виде столбца соответствующей размерности.
Далее, при необходимости, задаются опции. Вот тут и раскрываются широкие возможности MATLAB по настройке решателя. Помимо управления точностью и величиной шага, имеется возможность обрабатывать данные в процессе вычисления, а также выполнять скрипты по завершению вычисления. Но ещё более полезным является опция отслеживания событий по условию, более подробно поговорим об этом дальше. Также есть другие специальные опции, которые могут быть использованы при решении определённых типов систем.
Вы могли заметить, что название функции — odeXY – это обозначение для всех решателей, которых всего 8 штук. В данном ролике мы пользоваться решателем ode45, соответствующего численному по методу Дормана-Принса 4(5). Этого решателя достаточно для подавляющего большинства задач. Остальные решатели будут подробно рассмотрены в приложении к задачам соответствующих типов позже.
Перейдем к примерам.
Рассмотрим 2 примера:
- решение дифференциального уравнения первого порядка.
- решение системы двух дифференциальных уравнений второго порядка.
В качестве уравнение первого порядка рассмотрим логистическое уравнение Ферхюльста, которое описывает динамику численности популяции. Суть уравнения такова: скорость прироста населения y пропорциональна количеству населения, однако лимитирована максимальной численностью популяции.
Забавный факт: Ферхюльст назвал это уравнение логистическим, и никто до сих пор не знает почему, ибо сам Ферхюльст об этом никому не рассказал.
Решение этого дифференциального уравнения выглядит следующим образом.
Пишем функцию в явном виде, задаём интервал расчёта и записываем начальное условие. Пару слов о записи функции подобным образом. Знак собаки в матлабе является оператором создания функции соответствующих переменных. Вы задаёте аргументы функции и саму функцию через пробел, как показано на рисунке.
Перейдем в окно MATLABа и посмотрим, как это выглядит.
Так выглядит скрипт:
Так выглядит график решения дифференциального уравнения:
В качестве примера решения системы, состоящей из двух дифференциальных уравнений второго порядка, рассмотрим шарик, подвешенный на пружине, который ещё и тормозит о воздух.
Уравнения показаны на рисунке. Но вид системы отличается от требуемого, в том числе потому, что в нём присутствуют вторые производные. Для приведения системы в требуемый вид выполним 2 простых шага:
Первое: следует заменить переменные соответствующим образом. Теперь у нас 4 неизвестных. Далее следует преобразовать уравнение с учетом замены. Таким образом, мы имеем систему из четырёх дифференциальных уравнений первого порядка.
Настало время её записать.
Итак, мы имеем систему, параметры, интервал времени и начальные условия. Решим же эту задачу скорее.
В отличие от предыдущего примера, систему четырех уравнений проблематично записать в поле аргумента. Поэтому всю систему будем записывать в отдельную функцию.
Эту функцию можно располагать как в самом скрипте решения в самом его конце, так и в виде отдельного m-файла.
На выходе функция должна представлять собой вектор-столбец, который записывается перечислением компонент через точку запятой как показано на рисунке.
Теперь рассмотрим скрипт самого решения.
На этот раз запишем интервал и начальные условия в виде переменных MATLAB. Интервал, соответственно, в виде строки, а начальные условия – в виде столбца длинной 4.
Сообразно с уже разобранным ранее синтаксисом укажем функцию pendulum_np, интервал времени и начальные условия.
Перейдем теперь в окно MATLAB и посмотрим решение.
Так выглядит скрипт:
Запускаем скрипт и получаем графики:
Зачастую хочется, чтобы одну и ту же систему можно было бы решать с разными параметрами, и при этом не менять их в теле самой функции. И это можно, и даже нужно осуществлять.
На рисунке показана функция MATLAB, которая соответствует движению подвешенного на пружине шара, однако можно заметить, что эта функция теперь имеет на 5 аргументов больше.
Параметры задаются в скрипте, а при вызове функции мы обращаемся к уже известному оператору-собаке, которая превращает функцию семи переменных pendulum_n в функцию двух переменных t и X. Вот и всё.
Я вам очень рекомендую разобраться с тем, как работает оператор-собака. В хелпе он называется function-handle. Разобравшись с ним Вам будет работать в среде MATLAB ещё проще и ещё приятнее.
Вывод: не так страшно решать диффуры
Под конец стоит сказать какие вообще системы дифференциальных уравнений матлаб может решать, а может он решать системы практически любых типов.
Их можно, с одной стороны, разделить по степени жёсткости, а с другой стороны, по структуре самой системы.
Когда уравнения представляют поведение системы, которая содержит ряд быстрых и медленных реакций, то такую систему уравнения можно назвать жесткой. Для жестких задач явные численные методы работают плохо, или не работают вовсе. Примером жесткой задачи может являться протекание тока через клеточную мембрану. На самом деле, чёткого разделения между жесткими и нежёсткими системами не существует. Степень жесткости системы формально определяется через собственные значения матрицы Якоби, но давайте не будем закапываться.
Видеообзор по теме решения систем Д/У доступен по ссылке.
Как задать интервал в матлабе
I’ve been writin’ a Matlab function that reads a file and plots its 3D graphics, with three projection.
In the four graphics provided, it plots all the data, and decides the x,y,z interval from these data points. I woul like to change these plottin’ intervals, but I don’t know how to do it.

See this figure:
In this case my problem is that on the 4th image (zy plane) I would like to see the y points in interval [1. 0], instead of viewin’ in interval [1. 0.4].
Как построить график уравнения в матлабе
Здравствуйте! В этой статье мы разберем построение графиков на MATLAB для различных математических функций, а также научимся выводить несколько графиков одновременно.
Где прописывать код
Но для начала научимся создавать скрипты в Matlab. Так вам будет удобнее работать с Matlab, писать коды и вообще приятнее, когда видишь всю программу сразу, а не построчно. Делается это просто: нажать New —> Script —> ScriptCtrl+N. 
Откроется вот такое окно: 
После того, как вы напишите сюда свой код, нужно его запустить. Это делается с помощью вот этой кнопки. 
Графики MATLAB
Построение графиков функций в MATLAB можно реализовать разными способами, например, через plot или polar, с полным списком можете ознакомиться здесь.
Но сейчас речь пойдёт о функции ezplot.
Разберём такой пример:
Построить графики функций y=e^((-x^2)/2) и у =x^4-x^2 для -1.5 ≤ x ≤1.5 на одной и той же координатной сетке.
Открываем скрипт и пишем нехитрый код:

Вывод:
На этом примере мы видим, как работает функция ezplot(), где в качестве аргументов указывается функция без ‘y=’ и интервал значений в квадратных скобках. Чтобы построить два графика в одном окне используем hold on. А axis tight — устанавливает границы осей в диапазоне данных значений.
Разберём ещё один:
Построить график функции y=x^3-x для интервала -4≤x≤4.
Как вы догадались, скрипт будет такой:

Его скорее всего проще записать в компилятор напрямую.
Давайте ещё один:
Построить график функции у=sin(1/x^2) для интервала -2 ≤ x ≤2.

И последний:
Построить график функции y=tan(x/2) для интервала — π ≤ x ≤ π и -10 ≤ y ≤10.

В данном случае мы указали границы оси с помощью axis от -π до π.
Если остались вопросы по поводу построения графиков функций в MATLAB, то обязательно пишите в комментариях, ответим.
2. Графика matlab

График даёт самую полную общую информацию о функции, поэтому в системах компьютерной математики большое внимание уделяется средствам построения графиков функций.
В MATLAB имеется три функции построения двумерных графиков: plot() , fplot( ) и ezplot( ).
Функция plot() строит графики кривых с массивами значений абсцисс и ординат и имеет следующий формат:
Строка s используется для задания параметров графика: типа, толщины и цвета рисуемой линии, а также формы и размера меток на графике. Строка s может отсутствовать, тогда MATLAB устанавливает параметры, действующие по умолчанию: все кривые выводятся сплошными линиями, окрашенными циклически в шесть различных цветов.
Переменная s представляет собой строку символов, и эту строку можно подготовить в отдельной команде или записать непосредственно в команде построения графика, например
Таблица кодировки типов линий при выводе графика функции
Таблица кодировки цвета линии графика функции
Таблица кодировки меток на графике
^ v > > x=0:0.01:3; y=exp(x).*sin(9*x); plot(x, y,’r-‘)
Для построения графиков используется специальный графический редактор, который строит на экране графическое окно и в нём рисует график. Вызывается графический редактор автоматически при выполнении графических функций. По умолчанию производится разметка осей координат и иногда выводится заголовок сверху графика. Графический редактор имеет свои средства модификации графика и нанесения на график различных надписей и символов. Например, заголовок создаёт функция titke(‘text’), причём в качестве параметра text можно использовать и формулу.
Пример. Построить график функции с заголовком.
Текст можно вывести в заданное координатами место графика функцией .
>> text(0.5, 15, ‘grafik y=exp(x)sin(9x)’)
Координаты вывода текста можно указать на графике мышью, если использовать функцию . Тогда после вывода графика и выполнения команды
нужно указать мышью место на графике и щёлкнуть.
На одном чертеже можно построить графики нескольких функций, для этого нужно попарно перечислить векторы, задающие абсциссы и ординаты. Для идентификации графиков можно использовать команду legend(), позволяющую связать с каждой кривой некоторую текстовую информацию.
Пример. Построить на одном чертеже графики функций и

>> x=0:0.02:pi; y=exp(x);z=sin(9*x);plot(x, y,x, z), legend(‘exp(x)’, ‘sin(9x)’)
Имеется другой способ размещения на одном чертеже графиков нескольких функций: сформировать матрицу, столбцы которой должны содержать нужные ординаты. Ординаты обычно удобно задавать строками, тогда для построения графиков строки необходимо транспонировать.
Пример. Построить на одном чертеже графики функций .
а) Построить график функции на промежутке с шагом . График рисовать сплошной линией красного цвета.
6) Построить график функции на промежутке с шагом . График рисовать пунктирной линией чёрного цвета с маркерами в виде пятиконечной звезды размера 5.
в) Построить на одном чертеже графики функций .
г) Построить на одном чертеже графики функций . Использовать функцию для идентификации графиков.
д) Построить на одном чертеже графики функций . Использовать функцию .
Функция ezplot() применяется для рисования графиков неявно заданных функции двух переменных и параметрически заданных функций. Эта функция рисует также графики функций одной переменной, причём, в огтличие от функции plot(), шаг и нужные массивы значений абсцисс и ординат соэдаются автоматически. Функция ezplot() автоматически выводит над графиками наименование функций.

Пример. Построить на промежутке график функции . Нанести на график сетку.

Пример. Построить на промежутке график неявной функции, заданной уравнением .

Функция ezplot() особенно удобна для определения начального приближения решения системы двух уравнений графическом методом Нужно построить на одном чертеже графики двух неявных функций и . Эту задачу решают две последовательно выполненные команды
В первой команде используется функция hold, чтобы сохранить рисунок для последующего наложения на него второго рисунка.
Пример. Найти начальное приближение решения системы
Рисунок показывает, что система имеет четыре решения, приближённые значения которых есть , , , .
Задача 8 . Найти графическим методом начальные приближения решений системы ( N−номер варианта):
2.3. Построение нескольких рисунков в одном графическом окне
В одном графическом окне можно разместить несколько рисунков, используя функцию subplot(N,M,K). Эта функция создаёт массив графиков, состоящий из N рисунков по вертикали и M рисунков по горизонтали. В результате выполнения функции subplot(N,M,K) активным становится рисунок с номером K. Нумерация ведётся слева направо и сверху вниз. Крайний слева рисунок из верхнего ряда считается первым, а крайний справа из нижнего ряда имеет номер N*M.
Пример. В одном графическом окне построить графики четырёх функций: на промежутке , на промежутке , на промежутке и на промежутке .
Решение. Выполним следующие команды, не закрывая графического окна:
>> subplot(2,2,1), ezplot(‘x^2’,[-5,5]), xlabel(»),grid
>> subplot(2,2,2), ezplot(‘exp(x)’,[-2,2]), xlabel(»),grid
>> subplot(2,2,3), ezplot(‘log(x)’,[0,5]), xlabel(»),grid
>> subplot(2,2,4), ezplot(‘sqrt(x)’,[0,10]), xlabel(»),grid
В командах вывода графиков использована функция xlabel(‘’) с аргументом в виде пустой строки, которая отменяет вывод обозначения горизонтальной оси. Если этого не сделать, то символ обозначения оси наложится на наименование функций нижних графиков.
Функция fplot(‘f(x)’, [xmin, xmax]), аналогично функции plot(), строит график функции f(x), однако при использовании функции fplot() не требуется задавать массив значений аргумента и вычислять массив

значений функции, всё это делается автоматически. График строится на промежутке изменения аргумента x от xmin до xmax.
Пример. Построить график функции на промежутке .
Решение. Используем функцию fplot():
2.5. Трёхмерная графика
Чтобы построить поверхность , нужно иметь массив значений функции , вычисленный на некоторой сетке. Для формирования двумерной прямоугольной сетки используется функция meshgrid(x,y), где x,y−одномерные массивы точек, задающие абсциссы и ординаты двумерной функции.
Пример. Построить поверхность .

>> x=0:0.2:8; y=0:0.2:4; [X, Y]=meshgrid(x, y); Z=2*cos(X+Y)+Y.*cos(X-Y); mesh(X, Y,Z)
Функция mesh() строит расцвеченную сетчатую поверхность, используя различную окраску вершин и рёбер.
Кроме функции mesh(), для изображения поверхности имеются и другие функции:
meshc()−строится сетчатая поверхность с линиями уровня;
meshz()−строится сетчатая поверхность и отсчётная плоскость;
surf()−строится расцвеченная поверхность;
surfc()−строится расцвеченная поверхность с линиями уровня;
surfl()−строится расцвеченная поверхность с подсветкой;
waterfall−строится поверхность без прорисовки ребер.
Пример. Построим поверхность этими функциями.

После построения рисунков для каждого рисунка можно выполнить масштабирование функцией axis([-Inf Inf —Inf Inf —Inf Inf]). Например, второй рисунок промасштабирует команда
При масштабировании определяются действительные интервалы изменения величин по всем координатам и рисунки становятся выразительнее.
1) Построить поверхность функцией на сетке x=0:0.2:8;y=0:0.2:4. Использовать режим вращения изображения для изменения ракурса. Режим вращения задаётся нажатием соответствующего значка на панели инструментов графического окна.
2) Эту же поверхность построить на более мелкой сетке x=0:0.05:8; y=0:0.05:4.
3) Эту же поверхность построить на сетке x=0:0.02:8;y=0:0.01:6
4) Построить поверхность функцией на сетке x=0:0.2:8; y=0:0.1:6
5) Выбрать сетку и построить поверхность функцией
6) Построить в одном графическом окне три поверхности : одну на сетке x=0:0.1:8;y=0:0.1:4, вторую на сетке x=0:0.05:8;y=0:0.05 и третью на сетке x=0:0.01:8;y=0:0.01:4.
7) Выбрать сетку и построить в одном графическом окне четыре поверхности при следующих значениях параметров и :
8) Построить в одном окне поверхность функциями и на сетке x=-pi:0.1:pi; y=-pi:0.1:pi. Выполнить масштабирование рисунков.
9) Построить поверхность функцией на сетке x=-pi:0.1:pi; y=-pi:0.1:pi. Установить единый масштаб по осям абсцисс и ординат, выбрать и установить ракурс, удалить сетку.
Построение графиков.
Основная команда для построения графиков функций одной переменной в MATLAB – команда plot. При этом графики строятся в отдельных масштабируемых и перемещаемых окнах (Figure).
Возьмем вначале простейший пример – построим график синусоиды. Следует помнить, что MATLAB строит графики функций по ряду точек, соединяя их отрезками прямых, т. е. осуществляя линейную интерполяцию функции в интервале между соседними точками. Зададим интервал изменения аргумента х от 0 до 10 с шагом 0.1.
Текст соответствующего M-файла:
| x=0:0.1:10; y=sin(x); plot(x,y) |
Графическое окно с результатом представлено на рис. 1.

Рис. 1. Графическое окно, в котором построен график синусоиды.
Дополнительные возможности для оформления графиков:
· hold on (hold off) – объединение (отключение) нескольких графиков на одних координатных осях;
· grid on (grid off) – нанесение (отключение) линий сетки на график;
· title(‘заголовок’) – вывод заголовка функции;
· xlabel(‘подпись под осью x’),ylabel(‘подпись под осью y’) – соответственно подписи осей х и у;
· text(m,n,’надпись’)– надпись в заданном месте рисунка, m и n – координаты точки на графике, начиная с которой выводится запись (координаты точки задаются в тех же единицах измерения, что и координаты осей графика);
· legend(‘легенда 1’, ‘легенда 2’, … , ‘легенда n’, k)– легенды для каждого из n-графиков k – местоположение легенды.
· Функцияsubplot(m,n,p) – это разделение графического окна MATLAB на несколько подокон с различными графиками, где m и n – число частей по вертикали и по горизонтали, на которые делится графическое окно, p – номер подокна в котором нужно отобразить график.
Полная форма команды построения графиков функций одной переменной:
где x1, x2, … , xn – массивы абсцисс графиков; y1, y2, …, yn – массивы ординат; s1, s2, … , sn – строка, состоящая из трех символов, которые определяют цвет линии, тип маркера и тип линии графиков.
Кроме того, для построения графиков функций одной переменной можно использовать графическую функцию fplot. Она позволяет строить график функции, заданной в символьном виде (например, арифметическое выражение, определяющее функцию, заключено в апострофы), в интервале изменения аргумента от xmin до xmax без фиксированного шага изменения х. Рассмотрим ее применение для построения графика функции на интервале от -10 до 10. Эта функция имеет устранимую неопределенность в точке 0. Построение ее графика с помощью plot в этой точке не представляется возможным. Соответствующее графическое окно с графиком представлено на рис. 2. Заметим, что в точке результат правильный, т.е. .
Текст соответствующего M-файла:
| fplot(‘sin(x)/x’,[-10,10]);grid on |

Рис. 2. Графическое окно, в котором построен график sin(x)/x.
Команда grid on (сетка) позволяет включить отображение сетки, которая строится пунктирными линиями.
Таблица 1.6. Параметры для управления цветом и видом графиков.
| Параметр | Обозначение |
| Тип линии | |
| сплошная | — |
| пунктирная | : |
| штриховая | — |
| штрихпунктирная | -. |
| Цвет линии | |
| красный | r |
| желтый | y |
| зеленый | g |
| синий | b |
| голубой | c |
| розовый | m |
| черный | k |
| белый | w |
| Тип маркера | |
| точка | . |
| кружок | о |
| крестик | x |
| плюс | + |
| звездочка | * |
| квадрат | s |
| ромб | d |
| треугольник вершиной вниз | v |
| треугольник вершиной вверх | ^ |
Пример. Построение графика функции на отрезке [-5; 5] , используя графические функции plot и fplot
Пример текста программы для М-файла

Примеp. Определение наибольшего и наименьшего значения функции на отрезке [-5; 5] и построение ее графика
2. Простые вычисления в MatLab
Разработать алгоритмы решения задач из варианта задания.
Составить программы решения задач.
Контрольные вопросы
Структура окна редактора MatLab.
Правила ввода команд.
Правила ввода функций и операндов.
Правила ввода выражений.
Правила ввода комментариев.
Правила просмотра результатов операций.
Правила создания двумерных графиков.
Запуск и отладка программ.
Задание к работе
Ввести текст в виде комментария, как заглавие программы.
Ввести исходные данные.
Задать изменение аргумента.
Вычислить значения функций 1 и 2 для аргумента в заданном интервале. Вывести графики функций одновременно на одном графике в декартовых коор динатах. Для разных графиков использовать разный тип линий.
Пункты 1. 4 задачи 1.
Вывести графики функций в двух подокнах на одном графике. Графики сделать в

Варианты заданий
Методические указания
Текстовые пояснения в программу вводятся, как комментарий. Он начинается с сим вола %, который располагается в первой позиции строки. Комментарий — это текст! В него не надо включать символы операций.
Для формирования XY графика необходимо:
Вычислить функцию, например, y=f(x).
Вывести график процедурой plot(x,y,s). Процедура рисует график прямыми ли ниями между вычисленными точками.. Здесь s — строковая константа, задающая параметры линии, ее можно пропускать. Определены следующие значения s:
https://amdy.su/wp-admin/options-general.php?page=ad-inserter.php#tab-8

Если на одном графике нужно отобразить несколько функции, например, у1=т(х) и y2=f(x)., то они вначале вычисляются, а затем выводятся процедурой
plot(x,y1,’s1′,x,y2,’s2. ), в которой в качестве параметров для каждой функции следуют группы .
— Для создания в графическом окне нескольких подокон для вывода графиков используется процедура subplot(m,n,p), где m — число подокон в окне по горизонтали, п — по вертикали, р — номер используемого подокна (нумерация с 1). Для формирования графика в столбиковой форме нужно использовать процедуру Ьаг(х.у). При выводе такого графика в подокно строка программы имеет вид subplot(m,n,p), bar(x,y).
Как задать интервал в матлабе
Syntax
Description
Vector and Matrix Data
plot( X , Y ) creates a 2-D line plot of the data in Y versus the corresponding values in X .
To plot a set of coordinates connected by line segments, specify X and Y as vectors of the same length.
To plot multiple sets of coordinates on the same set of axes, specify at least one of X or Y as a matrix.
plot( X , Y , LineSpec ) creates the plot using the specified line style, marker, and color.
plot( X 1, Y 1. X n, Y n) plots multiple pairs of x— and y-coordinates on the same set of axes. Use this syntax as an alternative to specifying coordinates as matrices.
plot( X 1, Y 1, LineSpec 1. X n, Y n, LineSpec n) assigns specific line styles, markers, and colors to each x—y pair. You can specify LineSpec for some x—y pairs and omit it for others. For example, plot(X1,Y1,»o»,X2,Y2) specifies markers for the first x—y pair but not for the second pair.
plot( Y ) plots Y against an implicit set of x-coordinates.
If Y is a vector, the x-coordinates range from 1 to length(Y) .
If Y is a matrix, the plot contains one line for each column in Y . The x-coordinates range from 1 to the number of rows in Y .
If Y contains complex numbers, MATLAB ® plots the imaginary part of Y versus the real part of Y . If you specify both X and Y , the imaginary part is ignored.
plot( Y , LineSpec ) plots Y using implicit x-coordinates, and specifies the line style, marker, and color.
Table Data
plot( tbl , xvar , yvar ) plots the variables xvar and yvar from the table tbl . To plot one data set, specify one variable for xvar and one variable for yvar . To plot multiple data sets, specify multiple variables for xvar , yvar , or both. If both arguments specify multiple variables, they must specify the same number of variables. (since R2022a)
plot( tbl , yvar ) plots the specified variable from the table against the row indices of the table. If the table is a timetable, the specified variable is plotted against the row times of the timetable. (since R2022a)
Additional Options
plot( ax , ___ ) displays the plot in the target axes. Specify the axes as the first argument in any of the previous syntaxes.
plot( ___ , Name,Value ) specifies Line properties using one or more name-value arguments. The properties apply to all the plotted lines. Specify the name-value arguments after all the arguments in any of the previous syntaxes. For a list of properties, see Line Properties .
p = plot( ___ ) returns a Line object or an array of Line objects. Use p to modify properties of the plot after creating it. For a list of properties, see Line Properties .
Examples
Create Line Plot
Create x as a vector of linearly spaced values between 0 and 2 π . Use an increment of π / 1 0 0 between the values. Create y as sine values of x . Create a line plot of the data.

Plot Multiple Lines
Define x as 100 linearly spaced values between — 2 π and 2 π . Define y1 and y2 as sine and cosine values of x . Create a line plot of both sets of data.

Create Line Plot From Matrix
Define Y as the 4-by-4 matrix returned by the magic function.
Create a 2-D line plot of Y . MATLAB® plots each matrix column as a separate line.

Specify Line Style
Plot three sine curves with a small phase shift between each line. Use the default line style for the first line. Specify a dashed line style for the second line and a dotted line style for the third line.

MATLAB® cycles the line color through the default color order.
Specify Line Style, Color, and Marker
Plot three sine curves with a small phase shift between each line. Use a green line with no markers for the first sine curve. Use a blue dashed line with circle markers for the second sine curve. Use only cyan star markers for the third sine curve.

Display Markers at Specific Data Points
Create a line plot and display markers at every fifth data point by specifying a marker symbol and setting the MarkerIndices property as a name-value pair.

Specify Line Width, Marker Size, and Marker Color
Create a line plot and use the LineSpec option to specify a dashed green line with square markers. Use Name,Value pairs to specify the line width, marker size, and marker colors. Set the marker edge color to blue and set the marker face color using an RGB color value.

Add Title and Axis Labels
Use the linspace function to define x as a vector of 150 values between 0 and 10. Define y as cosine values of x .
Create a 2-D line plot of the cosine curve. Change the line color to a shade of blue-green using an RGB color value. Add a title and axis labels to the graph using the title , xlabel , and ylabel functions.

Plot Durations and Specify Tick Format
Define t as seven linearly spaced duration values between 0 and 3 minutes. Plot random data and specify the format of the duration tick marks using the ‘DurationTickFormat’ name-value pair argument.

Plot Coordinates from a Table
A convenient way to plot data from a table is to pass the table to the plot function and specify the variables to plot.
Read weather.csv as a timetable tbl . Then display the first three rows of the table.
Plot the row times on the x -axis and the RainInchesPerMinute variable on the y -axis. When you plot data from a timetable, the row times are plotted on the x -axis by default. Thus, you do not need to specify the Time variable. Return the Line object as p . Notice that the axis labels match the variable names.

To modify aspects of the line, set the LineStyle , Color , and Marker properties on the Line object. For example, change the line to a red dotted line with point markers.

Plot Multiple Table Variables on One Axis
Read weather.csv as a timetable tbl , and display the first few rows of the table.
Plot the row times on the x -axis and the Temperature and PressureHg variables on the y -axis. When you plot data from a timetable, the row times are plotted on the x -axis by default. Thus, you do not need to specify the Time variable.
Add a legend. Notice that the legend labels match the variable names.

Specify Axes for Line Plot
Starting in R2019b, you can display a tiling of plots using the tiledlayout and nexttile functions. Call the tiledlayout function to create a 2-by-1 tiled chart layout. Call the nexttile function to create an axes object and return the object as ax1 . Create the top plot by passing ax1 to the plot function. Add a title and y -axis label to the plot by passing the axes to the title and ylabel functions. Repeat the process to create the bottom plot.

Modify Lines After Creation
Define x as 100 linearly spaced values between — 2 π and 2 π . Define y1 and y2 as sine and cosine values of x . Create a line plot of both sets of data and return the two chart lines in p .

Change the line width of the first line to 2. Add star markers to the second line. Use dot notation to set properties.

Plot Circle
Plot a circle centered at the point (4,3) with a radius equal to 2. Use axis equal to use equal data units along each coordinate direction.

Input Arguments
X — x-coordinates
scalar | vector | matrix
x-coordinates, specified as a scalar, vector, or matrix. The size and shape of X depends on the shape of your data and the type of plot you want to create. This table describes the most common situations.
Specify X and Y as scalars and include a marker. For example:
Specify X and Y as any combination of row or column vectors of the same length. For example:
Specify consecutive pairs of X and Y vectors. For example:
If all the sets share the same x— or y-coordinates, specify the shared coordinates as a vector and the other coordinates as a matrix. The length of the vector must match one of the dimensions of the matrix. For example:
Alternatively, specify X and Y as matrices of equal size. In this case, MATLAB plots each column of Y against the corresponding column of X . For example:
Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration
Y — y-coordinates
scalar | vector | matrix
y-coordinates, specified as a scalar, vector, or matrix. The size and shape of Y depends on the shape of your data and the type of plot you want to create. This table describes the most common situations.
Specify X and Y as scalars and include a marker. For example:
Specify X and Y as any combination of row or column vectors of the same length. For example:
Alternatively, specify just the y-coordinates. For example:
Specify consecutive pairs of X and Y vectors. For example:
If all the sets share the same x— or y-coordinates, specify the shared coordinates as a vector and the other coordinates as a matrix. The length of the vector must match one of the dimensions of the matrix. For example:
Alternatively, specify X and Y as matrices of equal size. In this case, MATLAB plots each column of Y against the corresponding column of X . For example:
Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration
LineSpec — Line style, marker, and color
string scalar | character vector
Line style, marker, and color, specified as a string scalar or character vector containing symbols. The symbols can appear in any order. You do not need to specify all three characteristics (line style, marker, and color). For example, if you omit the line style and specify the marker, then the plot shows only the marker and no line.
Example: «—or» is a red dashed line with circle markers.
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
tbl — Source table
table | timetable
Source table containing the data to plot, specified as a table or a timetable.
xvar — Table variables containing x-coordinates
string array | character vector | cell array | pattern | numeric scalar or vector | logical vector | vartype()
Table variables containing the x-coordinates, specified using one of the indexing schemes from the table.
A string, character vector, or cell array.
«A» or ‘A’ — A variable called A
[«A»,»B»] or — Two variables called A and B
«Var»+digitsPattern(1) — Variables named «Var» followed by a single digit
An index number that refers to the location of a variable in the table.
A vector of numbers.
A logical vector. Typically, this vector is the same length as the number of variables, but you can omit trailing 0 or false values.
3 — The third variable from the table
[2 3] — The second and third variables from the table
[false false true] — The third variable
A vartype subscript that selects variables of a specified type.
vartype(«categorical») — All the variables containing categorical values
The table variables you specify can contain numeric, categorical, datetime, or duration values. If xvar and yvar both specify multiple variables, the number of variables must be the same.
Example: plot(tbl,[«x1″,»x2″],»y») specifies the table variables named x1 and x2 for the x-coordinates.
Example: plot(tbl,2,»y») specifies the second variable for the x-coordinates.
Example: plot(tbl,vartype(«numeric»),»y») specifies all numeric variables for the x-coordinates.
yvar — Table variables containing y-coordinates
string array | character vector | cell array | pattern | numeric scalar or vector | logical vector | vartype()
Table variables containing the y-coordinates, specified using one of the indexing schemes from the table.
A string, character vector, or cell array.
«A» or ‘A’ — A variable called A
[«A»,»B»] or — Two variables called A and B
«Var»+digitsPattern(1) — Variables named «Var» followed by a single digit
An index number that refers to the location of a variable in the table.
A vector of numbers.
A logical vector. Typically, this vector is the same length as the number of variables, but you can omit trailing 0 or false values.
3 — The third variable from the table
[2 3] — The second and third variables from the table
[false false true] — The third variable
A vartype subscript that selects variables of a specified type.
vartype(«categorical») — All the variables containing categorical values
The table variables you specify can contain numeric, categorical, datetime, or duration values. If xvar and yvar both specify multiple variables, the number of variables must be the same.
Example: plot(tbl,»x»,[«y1″,»y2»]) specifies the table variables named y1 and y2 for the y-coordinates.
Example: plot(tbl,»x»,2) specifies the second variable for the y-coordinates.
Example: plot(tbl,»x»,vartype(«numeric»)) specifies all numeric variables for the y-coordinates.
ax — Target axes
Axes object | PolarAxes object | GeographicAxes object
Target axes, specified as an Axes object, a PolarAxes object, or a GeographicAxes object. If you do not specify the axes, MATLAB plots into the current axes or it creates an Axes object if one does not exist.
To create a polar plot or geographic plot, specify ax as a PolarAxes or GeographicAxes object. Alternatively, call the polarplot or geoplot function.
Name-Value Arguments
Specify optional pairs of arguments as Name1=Value1. NameN=ValueN , where Name is the argument name and Value is the corresponding value. Name-value arguments must appear after other arguments, but the order of the pairs does not matter.
Example: plot([0 1],[2 3],LineWidth=2)
Before R2021a, use commas to separate each name and value, and enclose Name in quotes.
Example: plot([0 1],[2 3],»LineWidth»,2)
Note
The properties listed here are only a subset. For a complete list, see Line Properties .
Color — Line color
[0 0.4470 0.7410] (default) | RGB triplet | hexadecimal color code | «r» | «g» | «b» | .
Line color, specified as an RGB triplet, a hexadecimal color code, a color name, or a short name.
For a custom color, specify an RGB triplet or a hexadecimal color code.
An RGB triplet is a three-element row vector whose elements specify the intensities of the red, green, and blue components of the color. The intensities must be in the range [0,1] , for example, [0.4 0.6 0.7] .
A hexadecimal color code is a string scalar or character vector that starts with a hash symbol ( # ) followed by three or six hexadecimal digits, which can range from 0 to F . The values are not case sensitive. Therefore, the color codes «#FF8800» , «#ff8800» , «#F80» , and «#f80» are equivalent.
Alternatively, you can specify some common colors by name. This table lists the named color options, the equivalent RGB triplets, and hexadecimal color codes.
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Here are the RGB triplets and hexadecimal color codes for the default colors MATLAB uses in many types of plots.
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Example: «blue»
Example: [0 0 1]
Example: «#0000FF»
LineStyle — Line style
«-» (default) | «—» | «:» | «-.» | «none»
Line style, specified as one of the options listed in this table.
LineWidth — Line width
0.5 (default) | positive value
Line width, specified as a positive value in points, where 1 point = 1/72 of an inch. If the line has markers, then the line width also affects the marker edges.
The line width cannot be thinner than the width of a pixel. If you set the line width to a value that is less than the width of a pixel on your system, the line displays as one pixel wide.
Marker — Marker symbol
«none» (default) | «o» | «+» | «*» | «.» | .
Marker symbol, specified as one of the values listed in this table. By default, the object does not display markers. Specifying a marker symbol adds markers at each data point or vertex.
MarkerIndices — Indices of data points at which to display markers
1:length(YData) (default) | vector of positive integers | scalar positive integer
Indices of data points at which to display markers, specified as a vector of positive integers. If you do not specify the indices, then MATLAB displays a marker at every data point.
Note
To see the markers, you must also specify a marker symbol.
Example: plot(x,y,»-o»,»MarkerIndices»,[1 5 10]) displays a circle marker at the first, fifth, and tenth data points.
Example: plot(x,y,»-x»,»MarkerIndices»,1:3:length(y)) displays a cross marker every three data points.
Example: plot(x,y,»Marker»,»square»,»MarkerIndices»,5) displays one square marker at the fifth data point.
MarkerEdgeColor — Marker outline color
«auto» (default) | RGB triplet | hexadecimal color code | «r» | «g» | «b» | .
Marker outline color, specified as «auto» , an RGB triplet, a hexadecimal color code, a color name, or a short name. The default value of «auto» uses the same color as the Color property.
For a custom color, specify an RGB triplet or a hexadecimal color code.
An RGB triplet is a three-element row vector whose elements specify the intensities of the red, green, and blue components of the color. The intensities must be in the range [0,1] , for example, [0.4 0.6 0.7] .
A hexadecimal color code is a string scalar or character vector that starts with a hash symbol ( # ) followed by three or six hexadecimal digits, which can range from 0 to F . The values are not case sensitive. Therefore, the color codes «#FF8800» , «#ff8800» , «#F80» , and «#f80» are equivalent.
Alternatively, you can specify some common colors by name. This table lists the named color options, the equivalent RGB triplets, and hexadecimal color codes.
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Here are the RGB triplets and hexadecimal color codes for the default colors MATLAB uses in many types of plots.
![]()
![]()
![]()
![]()
![]()
![]()
![]()
MarkerFaceColor — Marker fill color
«none» (default) | «auto» | RGB triplet | hexadecimal color code | «r» | «g» | «b» | .
Marker fill color, specified as «auto» , an RGB triplet, a hexadecimal color code, a color name, or a short name. The «auto» option uses the same color as the Color property of the parent axes. If you specify «auto» and the axes plot box is invisible, the marker fill color is the color of the figure.
For a custom color, specify an RGB triplet or a hexadecimal color code.
An RGB triplet is a three-element row vector whose elements specify the intensities of the red, green, and blue components of the color. The intensities must be in the range [0,1] , for example, [0.4 0.6 0.7] .
A hexadecimal color code is a string scalar or character vector that starts with a hash symbol ( # ) followed by three or six hexadecimal digits, which can range from 0 to F . The values are not case sensitive. Therefore, the color codes «#FF8800» , «#ff8800» , «#F80» , and «#f80» are equivalent.
Alternatively, you can specify some common colors by name. This table lists the named color options, the equivalent RGB triplets, and hexadecimal color codes.
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Here are the RGB triplets and hexadecimal color codes for the default colors MATLAB uses in many types of plots.
![]()
![]()
![]()
![]()
![]()
![]()
![]()
MarkerSize — Marker size
6 (default) | positive value
Marker size, specified as a positive value in points, where 1 point = 1/72 of an inch.
DatetimeTickFormat — Format for datetime tick labels
character vector | string
Format for datetime tick labels, specified as the comma-separated pair consisting of «DatetimeTickFormat» and a character vector or string containing a date format. Use the letters A-Z and a-z to construct a custom format. These letters correspond to the Unicode ® Locale Data Markup Language (LDML) standard for dates. You can include non-ASCII letter characters such as a hyphen, space, or colon to separate the fields.
If you do not specify a value for «DatetimeTickFormat» , then plot automatically optimizes and updates the tick labels based on the axis limits.
Example: «DatetimeTickFormat»,»eeee, MMMM d, yyyy HH:mm:ss» displays a date and time such as Saturday, April 19, 2014 21:41:06 .
The following table shows several common display formats and examples of the formatted output for the date, Saturday, April 19, 2014 at 9:41:06 PM in New York City.
| Value of DatetimeTickFormat | Example |
|---|---|
| «yyyy-MM-dd» | 2014-04-19 |
| «dd/MM/yyyy» | 19/04/2014 |
| «dd.MM.yyyy» | 19.04.2014 |
| «yyyy年 MM月 dd日» | 2014年 04月 19日 |
| «MMMM d, yyyy» | April 19, 2014 |
| «eeee, MMMM d, yyyy HH:mm:ss» | Saturday, April 19, 2014 21:41:06 |
| «MMMM d, yyyy HH:mm:ss Z» | April 19, 2014 21:41:06 -0400 |
For a complete list of valid letter identifiers, see the Format property for datetime arrays.
DatetimeTickFormat is not a chart line property. You must set the tick format using the name-value pair argument when creating a plot. Alternatively, set the format using the xtickformat and ytickformat functions.
The TickLabelFormat property of the datetime ruler stores the format.
DurationTickFormat — Format for duration tick labels
character vector | string
Format for duration tick labels, specified as the comma-separated pair consisting of «DurationTickFormat» and a character vector or string containing a duration format.
If you do not specify a value for «DurationTickFormat» , then plot automatically optimizes and updates the tick labels based on the axis limits.
To display a duration as a single number that includes a fractional part, for example, 1.234 hours, specify one of the values in this table.
| Value of DurationTickFormat | Description |
|---|---|
| «y» | Number of exact fixed-length years. A fixed-length year is equal to 365.2425 days. |
| «d» | Number of exact fixed-length days. A fixed-length day is equal to 24 hours. |
| «h» | Number of hours |
| «m» | Number of minutes |
| «s» | Number of seconds |
Example: «DurationTickFormat»,»d» displays duration values in terms of fixed-length days.
To display a duration in the form of a digital timer, specify one of these values.
In addition, you can display up to nine fractional second digits by appending up to nine S characters.
Example: «DurationTickFormat»,»hh:mm:ss.SSS» displays the milliseconds of a duration value to three digits.
DurationTickFormat is not a chart line property. You must set the tick format using the name-value pair argument when creating a plot. Alternatively, set the format using the xtickformat and ytickformat functions.
The TickLabelFormat property of the duration ruler stores the format.
Use NaN and Inf values to create breaks in the lines. For example, this code plots the first two elements, skips the third element, and draws another line using the last two elements:
plot uses colors and line styles based on the ColorOrder and LineStyleOrder properties of the axes. plot cycles through the colors with the first line style. Then, it cycles through the colors again with each additional line style.
You can change the colors and the line styles after plotting by setting the ColorOrder or LineStyleOrder properties on the axes. You can also call the colororder function to change the color order for all the axes in the figure. (since R2019b)
Похожие публикации:
- Как распечатать диплом на принтере
- Как сделать все абзацы одинаковыми в ворде
- Как сделать длинный скриншот на хонор
- Как увеличить скорость загрузки в браузере опера gx