Постройте 3-D поверхность
fsurf(
создает объемную поверхностную диаграмму функционального f
)z = f(x,y)
на интервале по умолчанию [-5 5]
для x
и y
.
fsurf(
графики на заданном интервале. Использовать тот же интервал для обоих f
,xyinterval
)x
и y
, задайте xyinterval
как двухэлементный вектор из формы [min max]
. Чтобы использовать различные интервалы, задайте четырехэлементный вектор из формы [xmin xmax ymin ymax]
.
fsurf(
графики на заданном интервале. Использовать тот же интервал для обоих funx
,funy
,funz
,uvinterval
)u
и v
, задайте uvinterval
как двухэлементный вектор из формы [min max]
. Чтобы использовать различные интервалы, задайте четырехэлементный вектор из формы [umin umax vmin vmax]
.
fsurf(___,
устанавливает стиль линии, символ маркера и поверхностный цвет. Например, LineSpec
)'-r'
задает красные линии. Используйте эту опцию после любой из предыдущих комбинаций входных аргументов.
fsurf(___,
задает поверхностные свойства с помощью одного или нескольких аргументов пары "имя-значение". Используйте эту опцию после любой из комбинаций входных аргументов в предыдущих синтаксисах.Name,Value
)
fsurf(
графики в осях заданы ax
,___)ax
вместо текущей системы координат (gca
).
возвращает fs
= fsurf(___)FunctionSurface
объект или ParameterizedFunctionSurface
объект, в зависимости от входных параметров. Используйте fs
запросить и изменить свойства определенной поверхности. Для списка свойств смотрите FunctionSurface Properties или ParameterizedFunctionSurface Properties.
Постройте кусочное выражение
Задайте интервал графического вывода как второй входной параметр fsurf
. Когда вы строите несколько поверхностей на различных интервалах в тех же осях, пределы по осям настраивают, чтобы включать все данные.
f1 = @(x,y) erf(x)+cos(y); fsurf(f1,[-5 0 -5 5]) hold on f2 = @(x,y) sin(x)+cos(y); fsurf(f2,[0 5 -5 5]) hold off
Постройте параметрированную поверхность
для и . Добавьте свет в поверхность с помощью camlight
.
r = @(u,v) 2 + sin(7.*u + 5.*v); funx = @(u,v) r(u,v).*cos(u).*sin(v); funy = @(u,v) r(u,v).*sin(u).*sin(v); funz = @(u,v) r(u,v).*cos(v); fsurf(funx,funy,funz,[0 2*pi 0 pi]) camlight
Для и от к , постройте 3-D поверхность . Добавьте заголовок и подписи по осям и отобразите схему осей.
fsurf(@(x,y) y.*sin(x)-x.*cos(y),[-2*pi 2*pi]) title('ysin(x) - xcos(y) for x and y in [-2\pi,2\pi]') xlabel('x'); ylabel('y'); zlabel('z'); box on
Установите значения деления оси X и сопоставленные метки с помощью XTickLabel
и XTick
свойства объекта осей. Доступ к объекту осей с помощью gca
. Точно так же установите значения деления оси Y и сопоставленные метки.
ax = gca; ax.XTick = -2*pi:pi/2:2*pi; ax.XTickLabel = {'-2\pi','-3\pi/2','-\pi','-\pi/2','0','\pi/2','\pi','3\pi/2','2\pi'}; ax.YTick = -2*pi:pi/2:2*pi; ax.YTickLabel = {'-2\pi','-3\pi/2','-\pi','-\pi/2','0','\pi/2','\pi','3\pi/2','2\pi'};
Постройте параметрическую поверхность , , с различными стилями линии для различных значений для , используйте пунктирную зеленую линию для поверхностных ребер. Для , выключите ребра путем установки EdgeColor
свойство к 'none'
.
funx = @(u,v) u.*sin(v); funy = @(u,v) -u.*cos(v); funz = @(u,v) v; fsurf(funx,funy,funz,[-5 5 -5 -2],'--','EdgeColor','g') hold on fsurf(funx,funy,funz,[-5 5 -2 2],'EdgeColor','none') hold off
Постройте параметрическую поверхность
Присвойте параметрированный функциональный объект подложки переменной.
x = @(u,v) exp(-abs(u)/10).*sin(5*abs(v)); y = @(u,v) exp(-abs(u)/10).*cos(5*abs(v)); z = @(u,v) u; fs = fsurf(x,y,z)
fs = ParameterizedFunctionSurface with properties: XFunction: @(u,v)exp(-abs(u)/10).*sin(5*abs(v)) YFunction: @(u,v)exp(-abs(u)/10).*cos(5*abs(v)) ZFunction: @(u,v)u EdgeColor: [0 0 0] LineStyle: '-' FaceColor: 'interp' Show all properties
Измените интервал графического вывода для u
к [-30 30]
путем установки URange
свойство объекта. Добавьте прозрачность в поверхность путем установки FaceAlpha
свойство к значению между 0 (прозрачный) и 1 (непрозрачный).
fs.URange = [-30 30];
fs.FaceAlpha = .5;
Покажите контуры ниже объемной поверхностной диаграммы путем установки 'ShowContours'
опция к 'on'
.
f = @(x,y) 3*(1-x).^2.*exp(-(x.^2)-(y+1).^2)... - 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2)... - 1/3*exp(-(x+1).^2 - y.^2); fsurf(f,[-3 3],'ShowContours','on')
Управляйте разрешением объемной поверхностной диаграммы с помощью 'MeshDensity'
опция. Увеличение 'MeshDensity'
может сделать более сглаженные, более точные графики, в то время как уменьшение его может увеличить скорость графического вывода.
Создайте два графика в мозаичном размещении графика. В первом графике отобразите параметрическую поверхность , , . Поверхность имеет большой разрыв. Устраните эту проблему путем увеличения 'MeshDensity'
к 40
во втором графике. fsurf
заполняет разрыв, показывая это путем увеличения 'MeshDensity'
вы увеличили разрешение.
tiledlayout(2,1) nexttile fsurf(@(s,t) sin(s), @(s,t) cos(s), @(s,t) t/10.*sin(1./s)) view(-172,25) title('Default MeshDensity = 35') nexttile fsurf(@(s,t) sin(s), @(s,t) cos(s), @(s,t) t/10.*sin(1./s),'MeshDensity',40) view(-172,25) title('Increased MeshDensity = 40')
f
— 3-D функция, чтобы построить3-D функция, чтобы построить в виде указателя на функцию к именованной или анонимной функции.
Задайте функцию формы z = f(x,y)
. Функция должна принять два матричных входных параметра и возвратить матричный выходной аргумент, одного размера. Используйте операторы массивов вместо матричных операторов для лучшей эффективности. Например, используйте .*
(times
) вместо * (mtimes
).
Пример: f = @(x,y) sin(x) + cos(y);
xyinterval
— Графический вывод интервала для x
и y
(значение по умолчанию) | вектор из формы [min max]
| вектор из формы [xmin xmax ymin ymax]
Графический вывод интервала для x
и y
, заданный в одной из следующих форм:
Вектор из формы [min max]
— Используйте интервал [min max]
для обоих x
и y
Вектор из формы [xmin xmax ymin ymax]
— Используйте интервал [xmin xmax]
для x
и [ymin ymax]
для y
.
funx
— Параметрическая функция для координат xПараметрическая функция для x координирует в виде указателя на функцию к именованной или анонимной функции.
Задайте функцию формы x = funx(u,v)
. Функция должна принять два матричных входных параметра и возвратить матричный выходной аргумент, одного размера. Используйте операторы массивов вместо матричных операторов для лучшей эффективности. Например, используйте .*
(times
) вместо * (mtimes
).
Пример: funx = @(u,v) u.*sin(v);
funy
— Параметрическая функция для координат yПараметрическая функция для y координирует в виде указателя на функцию к именованной или анонимной функции.
Задайте функцию формы y = funy(u,v)
. Функция должна принять два матричных входных параметра и возвратить матричный выходной аргумент, одного размера. Используйте операторы массивов вместо матричных операторов для лучшей эффективности. Например, используйте .*
(times
) вместо * (mtimes
).
Пример: funy = @(t) @(u,v) -u.*cos(v);
funz
— Параметрическая функция для координат zПараметрическая функция для z координирует в виде указателя на функцию к именованной или анонимной функции.
Задайте функцию формы z = funz(u,v)
. Функция должна принять два матричных входных параметра и возвратить матричный выходной аргумент, одного размера. Используйте операторы массивов вместо матричных операторов для лучшей эффективности. Например, используйте .*
(times
) вместо * (mtimes
).
Пример: funz = @(u,v) v;
uvinterval
— Графический вывод интервала для u
и v
(значение по умолчанию) | вектор из формы [min max]
| вектор из формы [umin umax vmin vmax]
Графический вывод интервала для u
и v
, заданный в одной из следующих форм:
Вектор из формы [min max]
— Используйте интервал [min max]
для обоих u
и v
Вектор из формы [umin umax vmin vmax]
— Используйте интервал [umin umax]
для u
и [vmin vmax]
для v
.
ax
Объект осейОбъект осей. Если вы не задаете объект осей, то fsurf
использует текущую систему координат.
LineSpec
— Стиль линии, маркер и цветСтиль линии, цвет и маркер задается как символ или строка символов. Символы могут появиться в любом порядке. Вы не должны задавать все три характеристики (стиль линии, маркер и цвет). Например, если вы не используете стиль линии и задаете маркер, затем график показывает только маркер и никакую линию.
Пример: '--or'
красная пунктирная линия с круговыми маркерами
Стиль линии | Описание |
---|---|
- | Сплошная линия |
-- | Пунктирная линия |
: | Пунктирная линия |
-. | Штрихпунктирная линия |
Маркер | Описание |
---|---|
'o' | Круг |
'+' | Знак «плюс» |
'*' | Звездочка |
'.' | Точка |
'x' | Крест |
'_' | Горизонтальная линия |
'|' | Вертикальная линия |
's' | Квадрат |
'd' | Ромб |
'^' | Треугольник, направленный вверх |
'v' | Нисходящий треугольник |
'>' | Треугольник, указывающий вправо |
'<' | Треугольник, указывающий влево |
'p' | Пентаграмма |
'h' | Гексаграмма |
Цвет | Описание |
---|---|
| желтый |
| пурпурный |
| голубой |
| красный |
| зеленый |
| синий |
| белый |
| черный |
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
'Marker','o','MarkerFaceColor','red'
Список свойств здесь является только подмножеством. Для полного списка смотрите свойства FunctionSurface Properties orParameterizedFunctionSurface.
'MeshDensity'
— Количество оценки указывает на направлениеКоличество оценки указывает на направление в виде номера. Значением по умолчанию является 35
. Поскольку fsurf
объекты используют адаптивную оценку, фактическое количество точек оценки больше.
Пример: 100
'ShowContours'
— Отобразите контурный график в соответствии с графиком'off'
(значение по умолчанию) | логическое значение включения - выключенияОтобразите контурный график в соответствии с графиком в виде 'on'
или 'off'
, или как числовой или логический 1
TRUE
) или 0
ложь
). Значение 'on'
эквивалентно истине и 'off'
эквивалентно false
. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState
.
'EdgeColor'
'LineColor'
(значение по умолчанию) | 'interp'
| Триплет RGB | шестнадцатеричный цветовой код | 'r'
| 'g'
| 'b'
| ...Цвет линии в виде 'interp'
, триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое название. Значение триплета RGB по умолчанию [0 0 0]
соответствует черный. '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' |
'LineStyle'
— Стиль линии'-'
(значение по умолчанию) | '--'
| ':'
| '-.'
| 'none'
Стиль линии в виде одной из опций перечислен в этой таблице.
Стиль линии | Описание | Получившаяся линия |
---|---|---|
'-' | Сплошная линия |
|
'--' | Пунктирная линия |
|
':' | Пунктирная линия |
|
'-.' | Штрих-пунктирная линия |
|
'none' | Никакая линия | Никакая линия |
'LineWidth'
'LineWidth'
(значение по умолчанию) | положительное значениеШирина линии в виде положительного значения в точках, где 1 точка = 1/72 дюйма. Если у линии есть маркеры, ширина линии также влияет на края маркера.
Ширина линии не может быть более тонкой, чем ширина пикселя. Если вы устанавливаете ширину линии на значение, которое меньше ширины пикселя в вашей системе, отображения линии как один пиксель шириной.
'Marker'
— Символ маркера'none'
(значение по умолчанию) | 'o'
| '+'
| '*'
| '.'
| ...Символ маркера в виде одного из значений перечислен в этой таблице. По умолчанию объект не отображает маркеры. Определение символа маркера добавляет маркеры в каждой точке данных или вершине.
Значение | Описание |
---|---|
'o' | Круг |
'+' | Знак «плюс» |
'*' | Звездочка |
'.' | Точка |
'x' | Крест |
'_' | Горизонтальная линия |
'|' | Вертикальная линия |
'square' или 's' | Квадрат |
'diamond' или 'd' | Ромб |
'^' | Треугольник, направленный вверх |
'v' | Нисходящий треугольник |
'>' | Треугольник, указывающий вправо |
'<' | Треугольник, указывающий влево |
'pentagram' или 'p' | Пятиконечная звезда (пентаграмма) |
'hexagram' или 'h' | Шестиконечная звезда (гексаграмма) |
'none' | Никакие маркеры |
'MarkerSize'
'MarkerSize'
(значение по умолчанию) | положительное значениеРазмер маркера в виде положительного значения в точках, где 1 точка = 1/72 дюйма.
fs
— Один или несколько FunctionSurface
или ParameterizedFunctionSurface
объектыОдин или несколько FunctionSurface
или ParameterizedFunctionSurface
объекты, возвращенные как скаляр или вектор.
Если вы используете fsurf(f)
синтаксис или изменение этого синтаксиса, затем fsurf
возвращает FunctionSurface
объекты.
Если вы используете fsurf(funx,funy,funz)
синтаксис или изменение этого синтаксиса, затем fsurf
возвращает ParameterizedFunctionSurface
объекты.
Можно использовать эти объекты запросить и изменить свойства определенной поверхности. Для списка свойств смотрите FunctionSurface Properties и ParameterizedFunctionSurface Properties.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.