exponenta event banner

fplot3

График 3-D параметрическая кривая

Описание

пример

fplot3(xt,yt,zt) отображает параметрическую кривую xt = x (t), yt = y (t) и zt = z (t) на интервале по умолчанию  - 5  < t < 5.

пример

fplot3(xt,yt,zt,[tmin tmax]) график xt = x (t), yt = y (t) и zt = z (t) на интервале tmin < t < tmax.

пример

fplot3(___,LineSpec) использование LineSpec для задания стиля линии, обозначения маркера и цвета линии.

пример

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

fplot3(ax,___) печать в объекте-осях ax вместо текущих осей gca.

пример

fp = fplot3(___) возвращает параметризованный объект строки функции. Объект используется для запроса и изменения свойств определенной параметризованной линии. Дополнительные сведения см. в разделе Свойства ParameteringFuncureLine.

Примеры

График 3-D Параметрическая линия

Печать параметрической линии 3-D

x = sin (t) y = cos (t) z = t

в диапазоне параметров по умолчанию [-5 5].

syms t
xt = sin(t);
yt = cos(t);
zt = t;
fplot3(xt,yt,zt)

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

Задать диапазон параметров

Печать параметрической линии

x = e-t/10sin (5t) y = e-t/10cos (5t) z = t

в диапазоне параметров [-10 10] путем указания четвертого аргумента fplot3.

syms t
xt = exp(-t/10).*sin(5*t);
yt = exp(-t/10).*cos(5*t);
zt = t;
fplot3(xt,yt,zt,[-10 10])

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

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

Постройте одну и ту же 3-D параметрическую кривую три раза на различных интервалах параметра. Для первой кривой используйте ширину линии 2. Во-вторых, задайте стиль красной пунктирной линии с маркерами окружности. В третьем случае задайте голубой, тире-точечный стиль линии с маркерами звездочки.

syms t
fplot3(sin(t), cos(t), t, [0 2*pi], 'LineWidth', 2)
hold on
fplot3(sin(t), cos(t), t, [2*pi 4*pi], '--or')
fplot3(sin(t), cos(t), t, [4*pi 6*pi], '-.*c')

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

Подготовьте 3D параметрическую линию Используя символические функции

Печать параметрической линии 3-D

x (t) = sin (t) y (t) = cos (t) z (t) = cos (2t).

syms x(t) y(t) z(t)
x(t) = sin(t);
y(t) = cos(t);
z(t) = cos(2*t);
fplot3(x,y,z)

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

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

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

Разделить фигуру на два вложенных графика с помощью subplot. На первом вложенном графике постройте график двух параметризованных линий с использованием векторного ввода. На втором вложенном графике постройте те же линии, используя hold on.

syms t
subplot(2,1,1)
fplot3([t -t], t, [t -t])
title('Multiple Lines Using Vector Inputs')

subplot(2,1,2)
fplot3(t, t, t)
hold on
fplot3(-t, t, -t)
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 parameterizedfunctionline. Axes 2 with title Multiple Lines Using Hold On Command contains 2 objects of type parameterizedfunctionline.

Измените 3D параметрическую линию после создания

Печать параметрической линии

x = e- | t |/10sin (5 | t |) y = e- | t |/10cos (5 | t |) z = t.

Предоставление выходных данных для создания fplot вернуть объект печати.

syms t
xt = exp(-abs(t)/10).*sin(5*abs(t));
yt = exp(-abs(t)/10).*cos(5*abs(t));
zt = t;
fp = fplot3(xt,yt,zt)

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

fp = 
  ParameterizedFunctionLine with properties:

    XFunction: [1x1 sym]
    YFunction: [1x1 sym]
    ZFunction: [1x1 sym]
        Color: [0 0.4470 0.7410]
    LineStyle: '-'
    LineWidth: 0.5000

  Show all properties

Изменение диапазона значений параметров на [-10 10] и цвет линии на красный с помощью TRange и Color свойства fp соответственно.

fp.TRange = [-10 10];
fp.Color = 'r';

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

Добавление меток заголовка и оси и засечек формата

Для значений t в диапазоне от -2λ до постройте график параметрической линии

x = ty = t/2z = sin (6t).

Добавьте заголовок и метки оси. Создайте засечки оси X, охватывая пределы оси X с интервалами, равными pi/2. Отображение этих засечек с помощью XTick собственность. Создание меток оси X с помощью arrayfun подавать texlabel кому S. Отображение этих меток с помощью XTickLabel собственность. Повторите эти шаги для оси Y.

Сведения об использовании LaTeX на графиках см. в разделе latex.

syms t
xt = t;
yt = t/2;
zt = sin(6*t);
fplot3(xt,yt,zt,[-2*pi 2*pi],'MeshDensity',30)
view(52.5,30)
xlabel('x')
ylabel('y')
title('x=t, y=t/2, z=sin(6t) for -2\pi < t < 2\pi')
ax = gca;

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

S = sym(ax.YLim(1):pi/2:ax.YLim(2));
ax.YTick = double(S);
ax.YTickLabel = arrayfun(@texlabel, S, 'UniformOutput', false);

Figure contains an axes. The axes with title x=t, y=t/2, z=sin(6t) for -2\pi < t < 2\pi contains an object of type parameterizedfunctionline.

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

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

Изменяя переменную i от 0 до 4δ, анимируйте параметрическую кривую

x = t + sin (40t) y = t + cos (40t) z = sin (t + i).

Чтобы воспроизвести анимацию, щелкните изображение.

syms t
fp = fplot3(t+sin(40*t),-t+cos(40*t), sin(t));
for i=0:pi/10:4*pi
    fp.ZFunction = sin(t+i);
drawnow
end

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

свернуть все

Параметрический ввод для оси X, определяемый как символическое выражение или функция. fplot3 использование symvar для поиска параметра.

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

Параметрический ввод для оси Z, определяемый как символическое выражение или функция. fplot3 использование symvar для поиска параметра.

Диапазон значений параметра, заданный как вектор из двух чисел. Диапазон по умолчанию: [-5 5].

Объект Axes. Если объект axes не указан, то fplot3 использует текущие оси.

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

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

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

y

желтый

m

пурпурный

c

голубой

r

красный

g

зеленый

b

синий

w

белый

k

черный

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

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

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

Перечисленные здесь свойства являются только подмножеством. Полный список см. в разделе Свойства параметрафункционала.

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

Цвет линии, определяемый как триплет 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'

Пример: [0.3 0.2 0.1]

Пример: 'green'

Пример: '#D2F9A7'

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

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

свернуть все

Один или несколько параметризованных линейных объектов, возвращаемых в виде скаляра или вектора. Эти объекты можно использовать для запроса и изменения свойств определенной параметризованной линии. Дополнительные сведения см. в разделе Свойства ParameteringFuncureLine.

Представлен в R2016a