fplot

Постройте символьное выражение или функцию

Описание

пример

fplot(f) строит символьный вход f на интервале по умолчанию [-5 5].

пример

fplot(f,[xmin xmax]) графики f на интервале [xmin xmax].

пример

fplot(xt,yt) графики xt = x (t) и yt = y (t) в области значений по умолчанию t, который является [–5 5].

fplot(xt,yt,[tmin tmax]) графики xt = x (t) и yt = y (t) по заданной области [tmin tmax].

пример

fplot(___,LineSpec) использование LineSpec установить стиль линии, символ маркера и цвет линии.

пример

fplot(___,Name,Value) задает свойства линии с помощью одного или нескольких Name,Value парные аргументы. Используйте эту опцию с любыми комбинациями входных аргументов в предыдущих синтаксисах. Name,Value парные настройки применяются ко всем построенным графикам. Чтобы установить опции для отдельных линий, используйте объекты, возвращенные fplot.

fplot(ax,___) графики в осях заданы ax вместо текущей системы координат gca.

пример

fp = fplot(___) возвращает функциональный объект линии или параметрированный объект линии, в зависимости от типа графика. Используйте объект запросить и изменить свойства определенной линии. Для получения дополнительной информации смотрите FunctionLine Properties and ParameterizedFunctionLine Properties.

Примеры

Постройте символьное выражение

Постройте tan(x) в области значений по умолчанию [-5 5]fplot показывает полюса по умолчанию. Для получения дополнительной информации смотрите ShowPoles аргумент в Аргументах в виде пар имя-значение.

syms x
fplot(tan(x))

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

Постройте символьную функцию

Постройте символьную функцию f(x)=cos(x) в области значений по умолчанию [-5 5].

syms f(x)
f(x) = cos(x);
fplot(f)

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

Постройте параметрическую кривую

Постройте параметрическую кривую x=cos(3t) и y=sin(2t).

syms t
x = cos(3*t);
y = sin(2*t);
fplot(x,y)

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

Определение интервала графического изображения

График sin(x) [-π/2,π/2] путем определения интервала графического вывода как второго входа к fplot.

syms x
fplot(sin(x),[-pi/2 pi/2])

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

Построение нескольких графиков на той же фигуре

Можно построить несколько графиков или путем передачи входных параметров как вектора или при помощи hold on последовательно построить на той же фигуре. Если вы задаете LineSpec и аргументы Name-Value, они применяются ко всем линиям. Чтобы установить опции для отдельных участков, используйте указатели на функцию, возвращенные fplot.

Разделите фигуру на два подграфика с помощью subplot. На первом подграфике, графике sin(x) и cos(x) использование векторного входа. На втором подграфике, графике sin(x) и cos(x) использование hold on.

syms x
subplot(2,1,1)
fplot([sin(x) cos(x)])
title('Multiple Lines Using Vector Inputs')

subplot(2,1,2)
fplot(sin(x))
hold on
fplot(cos(x))
title('Multiple Lines Using hold on Command')

hold off

Figure contains 2 axes. Axes 1 with title Multiple Lines Using Vector Inputs contains 2 objects of type functionline. Axes 2 with title Multiple Lines Using hold on Command contains 2 objects of type functionline.

Измените свойства линии и маркеры отображения

Постройте три синусоиды со сдвигом фазы между каждой линией. Для первой линии используйте linewidth 2. Для второго задайте пунктирный стиль красной линии с круговыми маркерами. Для третьего задайте голубой стиль штрихпунктирной линии с маркерами звездочки. Отобразите легенду.

syms x
fplot(sin(x+pi/5),'Linewidth',2)
hold on
fplot(sin(x-pi/5),'--or')
fplot(sin(x),'-.*c')
legend('show','Location','best')
hold off

Figure contains an axes. The axes contains 3 objects of type functionline.

Управляйте разрешением графика

Управляйте разрешением графика при помощи MeshDensity опция. Увеличение MeshDensity может сделать более сглаженные, более точные графики, в то время как уменьшение его может увеличить скорость графического вывода.

Разделите фигуру на два при помощи subplot. В первом подграфике постройте ступенчатую функцию от x = 2.1 к x = 2.15. Разрешение графика является слишком низким, чтобы обнаружить ступенчатую функцию. Устраните эту проблему путем увеличения MeshDensity к 39 во втором подграфике. График теперь обнаруживает ступенчатую функцию и показывает это путем увеличения MeshDensity вы увеличили разрешение графика.

syms x
stepFn = rectangularPulse(2.1, 2.15, x);

subplot(2,1,1)
fplot(stepFn);
title('Default MeshDensity = 23')

subplot(2,1,2)
fplot(stepFn,'MeshDensity',39);
title('Increased MeshDensity = 39')

Figure contains 2 axes. Axes 1 with title Default MeshDensity = 23 contains an object of type functionline. Axes 2 with title Increased MeshDensity = 39 contains an object of type functionline.

Измените график после создания

Постройте sin(x). Задайте выход, чтобы сделать fplot возвратите объект графика.

syms x
h = fplot(sin(x))

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

h = 
  FunctionLine with properties:

     Function: [1x1 sym]
        Color: [0 0.4470 0.7410]
    LineStyle: '-'
    LineWidth: 0.5000

  Show all properties

Измените синюю линию по умолчанию в пунктирную красную линию при помощи записи через точку, чтобы установить свойства. Точно так же добавьте 'x' маркеры и набор цвет маркера к синему.

h.LineStyle = '--';
h.Color = 'r';
h.Marker = 'x';
h.MarkerEdgeColor = 'b';

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

Добавление заголовка и подписей по осям и метки деления формата

Для x от -2π к 2πграфик sin(x). Добавьте заголовок и подписи по осям. Создайте метки деления оси X путем охвата пределов оси X с промежутками в pi/2. Отобразите эти метки деления при помощи XTick свойство. Создайте метки оси X при помощи arrayfun применять texlabel к S. Отобразите эти метки при помощи XTickLabel свойство.

Чтобы использовать LaTeX в графиках, смотрите latex.

syms x
fplot(sin(x),[-2*pi 2*pi])
grid on
title('sin(x) from -2\pi to 2\pi')
xlabel('x')
ylabel('y')

ax = gca;
S = sym(ax.XLim(1):pi/2:ax.XLim(2));
ax.XTick = double(S);
ax.XTickLabel = arrayfun(@texlabel,S,'UniformOutput',false);

Figure contains an axes. The axes with title sin(x) from -2\pi to 2\pi contains an object of type functionline.

Переоценка на изменении масштаба

Когда вы масштабируете в график, fplot переоценивает график автоматически. Эта переоценка на изменении масштаба показывает скрытую деталь в меньших масштабах.

Постройте x^3*sin(1/x) для -2 < x < 2 и -0.02 < y < 0.02. Увеличьте масштаб использования графика zoom и перерисуйте использование графика drawnow. Из-за переоценки на изменении масштаба, fplot показывает деталь меньшего масштаба. Повторите изменение масштаба 6 раз, чтобы посмотреть детали меньшего масштаба. Чтобы проигрывать анимацию, нажмите на изображение.

syms x
fplot(x^3*sin(1/x));
axis([-2 2 -0.02 0.02]);
for i=1:6
    zoom(1.7)
    pause(0.5)
end

Создание анимаций

Создайте анимации путем изменения отображенного выражения с помощью FunctionXFunction , и YFunction свойства и затем при помощи drawnow обновить график. Чтобы экспортировать в GIF, смотрите imwrite.

Путем варьирования переменной i от 0,1 до 3, анимируйте параметрическую кривую

x=itsin(it)y=itcos(it).

Чтобы проигрывать анимацию, нажмите на изображение.

syms t
fp = fplot(t, t);
axis([-15 15 -15 15])
for i=0.1:0.05:3
    fp.XFunction = i.*t.*sin(i*t);
    fp.YFunction = i.*t.*cos(i*t);
    drawnow
end

Входные параметры

свернуть все

Выражение или функция, чтобы построить в виде символьного выражения или функции.

Графический вывод интервала для x-координат в виде вектора из двух чисел. Областью значений по умолчанию является [-5 5]. Однако, если fplot обнаруживает конечное число разрывов в fто fplot расширяет область значений, чтобы показать им.

Параметрический вход для x-координат в виде символьного выражения или функции. fplot использование symvar найти параметр.

Параметрический вход для оси Y в виде символьного выражения или функции. fplot использование symvar найти параметр.

Область значений значений параметра tВ виде вектора из двух чисел. Областью значений по умолчанию является [-5 5].

Объект осей. Если вы не задаете объект осей, то fplot использует текущую систему координат gca.

Стиль линии, цвет и маркер задается как символ или строка символов. Символы могут появиться в любом порядке. Вы не должны задавать все три характеристики (стиль линии, маркер и цвет). Например, если вы не используете стиль линии и задаете маркер, затем график показывает только маркер и никакую линию.

Пример: '--or' красная пунктирная линия с круговыми маркерами

Стиль линииОписание
-Сплошная линия
--Пунктирная линия
:Пунктирная линия
-.Штрихпунктирная линия
МаркерОписание
'o'Круг
'+'Знак «плюс»
'*'Звездочка
'.'Точка
'x'Крест
'_'Горизонтальная линия
'|'Вертикальная линия
's'Квадрат
'd'Ромб
'^'Треугольник, направленный вверх
'v'Нисходящий треугольник
'>'Треугольник, указывающий вправо
'<'Треугольник, указывающий влево
'p'Пентаграмма
'h'Гексаграмма
ЦветОписание

y

желтый

m

пурпурный

c

голубой

r

красный

g

зеленый

b

синий

w

белый

k

черный

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'Marker','o','MarkerFaceColor','red'

Функциональные свойства линии, перечисленные здесь, являются только подмножеством. Для полного списка см. Свойства FunctionLine.

Количество оценки указывает в виде номера. Значением по умолчанию является 23. Поскольку fplot использует адаптивную оценку, фактическое количество точек оценки больше.

Отобразите асимптоты в полюсах в виде 'on' или 'off', или как числовой или логический 1 TRUE) или 0 ложь). Значение 'on' эквивалентно истине и 'off' эквивалентно false. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState.

Асимптоты отображаются как серые, подчеркнутые штриховой линией вертикальные линии. fplot асимптоты отображений только с fplot(f) синтаксис или варианты, а не с fplot(xt,yt) синтаксис.

Цвет линии в виде триплета RGB, шестнадцатеричного цветового кода, названия цвета или краткого названия.

Для пользовательского цвета задайте триплет RGB или шестнадцатеричный цветовой код.

  • Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; например, [0.4 0.6 0.7].

  • Шестнадцатеричный цветовой код является вектором символов или строковым скаляром, который запускается с символа хеша (#) сопровождаемый тремя или шестью шестнадцатеричными цифрами, которые могут лежать в диапазоне от 0 к F. Значения не являются чувствительными к регистру. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' эквивалентны.

Кроме того, вы можете задать имена некоторых простых цветов. Эта таблица приводит опции именованного цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.

Название цветаКраткое названиеТриплет RGBШестнадцатеричный цветовой кодВнешний вид
'red''r'[1 0 0]'#FF0000'

'green''g'[0 1 0]'#00FF00'

'blue''b'[0 0 1]'#0000FF'

'cyan' 'c'[0 1 1]'#00FFFF'

'magenta''m'[1 0 1]'#FF00FF'

'yellow''y'[1 1 0]'#FFFF00'

'black''k'[0 0 0]'#000000'

'white''w'[1 1 1]'#FFFFFF'

Вот являются триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию использованием MATLAB® во многих типах графиков.

Триплет RGBШестнадцатеричный цветовой кодВнешний вид
[0 0.4470 0.7410]'#0072BD'

[0.8500 0.3250 0.0980]'#D95319'

[0.9290 0.6940 0.1250]'#EDB120'

[0.4940 0.1840 0.5560]'#7E2F8E'

[0.4660 0.6740 0.1880]'#77AC30'

[0.3010 0.7450 0.9330]'#4DBEEE'

[0.6350 0.0780 0.1840]'#A2142F'

Пример: 'blue'

Пример: [0 0 1]

Пример: '#0000FF'

Стиль линии в виде одной из опций перечислен в этой таблице.

Стиль линииОписаниеПолучившаяся линия
'-'Сплошная линия

'--'Пунктирная линия

':'Пунктирная линия

'-.'Штрих-пунктирная линия

'none'Никакая линияНикакая линия

Ширина линии в виде положительного значения в точках, где 1 точка = 1/72 дюйма. Если у линии есть маркеры, ширина линии также влияет на края маркера.

Ширина линии не может быть более тонкой, чем ширина пикселя. Если вы устанавливаете ширину линии на значение, которое меньше ширины пикселя в вашей системе, отображения линии как один пиксель шириной.

Символ маркера в виде одного из значений перечислен в этой таблице. По умолчанию объект не отображает маркеры. Определение символа маркера добавляет маркеры в каждой точке данных или вершине.

ЗначениеОписание
'o'Круг
'+'Знак «плюс»
'*'Звездочка
'.'Точка
'x'Крест
'_'Горизонтальная линия
'|'Вертикальная линия
'square' или 's'Квадрат
'diamond' или 'd'Ромб
'^'Треугольник, направленный вверх
'v'Нисходящий треугольник
'>'Треугольник, указывающий вправо
'<'Треугольник, указывающий влево
'pentagram' или 'p'Пятиконечная звезда (пентаграмма)
'hexagram' или 'h'Шестиконечная звезда (гексаграмма)
'none'Никакие маркеры

Цвет контура маркера в виде 'auto', триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое название. Значение по умолчанию 'auto' использует тот же цвет в качестве Color свойство.

Для пользовательского цвета задайте триплет RGB или шестнадцатеричный цветовой код.

  • Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; например, [0.4 0.6 0.7].

  • Шестнадцатеричный цветовой код является вектором символов или строковым скаляром, который запускается с символа хеша (#) сопровождаемый тремя или шестью шестнадцатеричными цифрами, которые могут лежать в диапазоне от 0 к F. Значения не являются чувствительными к регистру. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' эквивалентны.

Кроме того, вы можете задать имена некоторых простых цветов. Эта таблица приводит опции именованного цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.

Название цветаКраткое названиеТриплет RGBШестнадцатеричный цветовой кодВнешний вид
'red''r'[1 0 0]'#FF0000'

'green''g'[0 1 0]'#00FF00'

'blue''b'[0 0 1]'#0000FF'

'cyan' 'c'[0 1 1]'#00FFFF'

'magenta''m'[1 0 1]'#FF00FF'

'yellow''y'[1 1 0]'#FFFF00'

'black''k'[0 0 0]'#000000'

'white''w'[1 1 1]'#FFFFFF'

'none'Не применяетсяНе применяетсяНе применяетсяНет цвета

Вот являются триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию использованием MATLAB во многих типах графиков.

Триплет RGBШестнадцатеричный цветовой кодВнешний вид
[0 0.4470 0.7410]'#0072BD'

[0.8500 0.3250 0.0980]'#D95319'

[0.9290 0.6940 0.1250]'#EDB120'

[0.4940 0.1840 0.5560]'#7E2F8E'

[0.4660 0.6740 0.1880]'#77AC30'

[0.3010 0.7450 0.9330]'#4DBEEE'

[0.6350 0.0780 0.1840]'#A2142F'

Цвет заливки маркера в виде 'auto', триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое название. 'auto' значение использует тот же цвет в качестве MarkerEdgeColor свойство.

Для пользовательского цвета задайте триплет RGB или шестнадцатеричный цветовой код.

  • Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; например, [0.4 0.6 0.7].

  • Шестнадцатеричный цветовой код является вектором символов или строковым скаляром, который запускается с символа хеша (#) сопровождаемый тремя или шестью шестнадцатеричными цифрами, которые могут лежать в диапазоне от 0 к F. Значения не являются чувствительными к регистру. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' эквивалентны.

Кроме того, вы можете задать имена некоторых простых цветов. Эта таблица приводит опции именованного цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.

Название цветаКраткое названиеТриплет RGBШестнадцатеричный цветовой кодВнешний вид
'red''r'[1 0 0]'#FF0000'

'green''g'[0 1 0]'#00FF00'

'blue''b'[0 0 1]'#0000FF'

'cyan' 'c'[0 1 1]'#00FFFF'

'magenta''m'[1 0 1]'#FF00FF'

'yellow''y'[1 1 0]'#FFFF00'

'black''k'[0 0 0]'#000000'

'white''w'[1 1 1]'#FFFFFF'

'none'Не применяетсяНе применяетсяНе применяетсяНет цвета

Вот являются триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию использованием MATLAB во многих типах графиков.

Триплет RGBШестнадцатеричный цветовой кодВнешний вид
[0 0.4470 0.7410]'#0072BD'

[0.8500 0.3250 0.0980]'#D95319'

[0.9290 0.6940 0.1250]'#EDB120'

[0.4940 0.1840 0.5560]'#7E2F8E'

[0.4660 0.6740 0.1880]'#77AC30'

[0.3010 0.7450 0.9330]'#4DBEEE'

[0.6350 0.0780 0.1840]'#A2142F'

Example: [0.3 0.2 0.1]

Пример: 'green'

Пример: '#D2F9A7'

Размер маркера в виде положительного значения в точках, где 1 точка = 1/72 дюйма.

Выходные аргументы

свернуть все

Одна или несколько функций или параметрированных функциональных объектов линии, возвращенных как скаляр или вектор.

  • Если вы используете fplot(f) синтаксис или изменение этого синтаксиса, затем fplot возвращает функциональные объекты линии.

  • Если вы используете fplot(xt,yt) синтаксис или изменение этого синтаксиса, затем fplot возвращает параметрированные объекты линии.

Можно использовать эти объекты запросить и изменить свойства определенной линии. Для списка свойств смотрите FunctionLine Properties and ParameterizedFunctionLine Properties.

Советы

  • Если fplot обнаруживает конечное число разрывов в fто fplot расширяет область значений, чтобы показать им.

Введенный в R2016a