fmesh

Постройте график 3-D mesh

Описание

пример

fmesh(f) создает сетчатый график выражения z = f(x,y) в течение интервала по умолчанию [-5 5] для x и y.

пример

fmesh(f,xyinterval) графики на заданном интервале. Чтобы использовать один и тот же интервал для обоих x и y, задайте xyinterval как двухэлементный вектор вида [min max]. Чтобы использовать различные интервалы, задайте четырехэлементный вектор формы [xmin xmax ymin ymax].

пример

fmesh(funx,funy,funz) строит графики параметрического mesh, заданной как x = funx(u,v), y = funy(u,v), z = funz(u,v) в течение интервала по умолчанию [-5 5] для u и v.

fmesh(funx,funy,funz,uvinterval) строит график параметрического mesh на заданном интервале. Чтобы использовать один и тот же интервал для обоих u и v, задайте uvinterval как двухэлементный вектор вида [min max]. Чтобы использовать различные интервалы, задайте четырехэлементный вектор формы [umin umax vmin vmax].

fmesh(___,LineSpec) задает стиль линии, символ маркера и цвет mesh. Для примера, '-r' задает красные линии. Используйте эту опцию после любой из предыдущих комбинаций входных аргументов.

пример

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

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

fs = fmesh(___) возвращает FunctionSurface объект или ParameterizedFunctionSurface объект, в зависимости от входов. Использование fs запрос и изменение свойств определенной поверхности. Список свойств см. в разделе FunctionSurface Properties или ParameterizedFunctionSurface Properties.

Примеры

свернуть все

Постройте mesh входа sin(x)+cos(y) через интервал по умолчанию -5<x<5 и -5<y<5.

fmesh(@(x,y) sin(x)+cos(y))

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

Постройте график параметризованного mesh

x=rcos(s)sin(t)y=rsin(s)sin(t)z=rcos(t)wherer=2+sin(7s+5t)

для 0<s<2π и 0<t<π. Сделать mesh частично прозрачной с помощью alpha.

r = @(s,t) 2 + sin(7.*s + 5.*t);
x = @(s,t) r(s,t).*cos(s).*sin(t);
y = @(s,t) r(s,t).*sin(s).*sin(t);
z = @(s,t) r(s,t).*cos(t);
fmesh(x,y,z,[0 2*pi 0 pi])

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

alpha(0.8)

Постройте кусочно-линейный вход

erf(x)+cos(y)-5<x<0sin(x)+cos(y)0<x<5

через интервал -5<y<5.

Задайте интервал графического изображения как второй аргумент fmesh. Когда вы строите несколько входы на разных интервалах в одних и тех же осях, пределы по осям корректируются, чтобы включать все данные.

fmesh(@(x,y) erf(x)+cos(y),[-5 0 -5 5])
hold on
fmesh(@(x,y) sin(x)+cos(y),[0 5 -5 5])
hold off

Figure contains an axes. The axes contains 2 objects of type functionsurface.

Создайте сетчатый график с помощью красных линий.

fmesh(@(x,y) sin(x)+cos(y),'EdgeColor','red')

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

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

свернуть все

3-D функцию для построения графика, заданную как указатель на функцию для именованной или анонимной функции.

Задайте функцию формы z = f(x,y). Функция должна принять два матричных входных параметров и вернуть матричный выходной аргумент того же размера. Используйте операторы массивов вместо матричных для наилучшей эффективности. Для примера используйте .* (times) вместо * (mtimes).

Пример: f = @(x,y) sin(x) + cos(y);

Интервал построения графиков для x и y, указанный в одной из следующих форм:

  • Вектор формы [min max] - Используйте интервал [min max] для обоих x и y

  • Вектор формы [xmin xmax ymin ymax] - Используйте интервал [xmin xmax] для x и [ymin ymax] для y.

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

Задайте функцию формы x = funx(u,v). Функция должна принять два матричных входных параметров и вернуть матричный выходной аргумент того же размера. Используйте операторы массивов вместо матричных для наилучшей эффективности. Для примера используйте .* (times) вместо * (mtimes).

Пример: funx = @(u,v) u.*sin(v);

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

Задайте функцию формы y = funy(u,v). Функция должна принять два матричных входных параметров и вернуть матричный выходной аргумент того же размера. Используйте операторы массивов вместо матричных для наилучшей эффективности. Для примера используйте .* (times) вместо * (mtimes).

Пример: funy = @(t) @(u,v) -u.*cos(v);

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

Задайте функцию формы z = funz(u,v). Функция должна принять два матричных входных параметров и вернуть матричный выходной аргумент того же размера. Используйте операторы массивов вместо матричных для наилучшей эффективности. Для примера используйте .* (times) вместо * (mtimes).

Пример: funz = @(u,v) v;

Интервал построения графиков для u и v, указанный в одной из следующих форм:

  • Вектор формы [min max] - Используйте интервал [min max] для обоих u и v.

  • Вектор формы [umin umax vmin vmax] - Используйте интервал [umin umax] для u и [vmin vmax] для v.

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

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

Пример: '--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'

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

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

Пример: 100

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

Цвет линии, заданный как 'interp', триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое имя. Значение по умолчанию 'interp' окрашивает ребра на основе ZData значения свойств.

Для пользовательского цвета укажите триплет 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'

Пример: 'blue'

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

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

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

Стиль линииОписаниеРезультирующая линия
'-'Сплошная линия

'--'Штриховая линия

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

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

'none'Нет линииНет линии

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

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

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

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

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

Для пользовательского цвета укажите триплет 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.5 0.5 0.5]

Пример: 'blue'

Пример: '#D2F9A7'

Цвет заливки маркера, заданный как 'auto', триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое имя. The '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 дюйма.

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

свернуть все

Один или несколько FunctionSurface или ParameterizedFunctionSurface объекты, возвращенные в виде скаляра или вектора.

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

  • Если вы используете fmesh(funx,funy,funz) синтаксис или изменение этого синтаксиса, затем fmesh возвращает ParameterizedFunctionSurface объекты.

Можно использовать эти объекты для запроса и изменения свойств определенного mesh. Список свойств см. в разделах Свойства FunctionSurface и Свойства ParameterizedFunctionSurface.

Введенный в R2016a