XContours, YContours, ZContours

Линии контура в постоянных x значениях

Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.

Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.

Сводные данные значения

XContours, YContours, ZContoursДополнительныйСписок арифметических выражений

Графические примитивы

ОбъектыЗначения по умолчанию
plot::Implicit3d

XContours, YContours, ZContours: [Automatic, 15]

plot::Cylindrical, plot::Function3d, plot::Spherical, plot::Surface, plot::XRotate, plot::ZRotate

XContours, YContours, ZContours: []

Описание

XContours, YContours и ZContours вызывают линии контура на объектах подложки в постоянном x, y или z - значения, соответственно.

Путем установки этих атрибутов много объектов подложки (таких как неявные поверхности, функциональные объекты и т.д.) могут быть проинструктированы, чтобы отобразить линии контура.

Установкой ZContours = [z1, z2, …] линии контура можно требовать в определенных местах. Это продемонстрировано в Примере 1.

ZContours = [Automatic, n] заставляет линии контура n быть равномерно распределенными вдоль области значений значений z объекта. Cf. Пример 2.

Примеры

Пример 1

График функций высотой использования по умолчанию, окрашивающей и строками mesh, чтобы улучшить отображение. С отключенными строками mesh высота, окрашивающая, часто все еще достаточна:

plotfunc3d(sin(x+cos(0.3*y))*cos(y),
           XLinesVisible=FALSE, YLinesVisible=FALSE,
           CameraDirection=[0,0.01,1])

Чтобы получить лучшее впечатление глубины, это помогло бы в этом примере добавить линии контура:

plotfunc3d(sin(x+cos(0.3*y))*cos(y),
           ZContours=[$ -1..1 step 0.25],
           XLinesVisible=FALSE, YLinesVisible=FALSE,
           CameraDirection=[0,0.01,1])

Пример 2

В предыдущем примере мы устанавливаем значения z для линий контура явным образом. Существует более легкий способ задать равноотстоящие строки, тем не менее, путем предоставления специальному значению Automatic, сопровождаемого количеством строк, чтобы использовать. Например, неявные поверхности использованием по умолчанию 15 строк в каждом направлении пробела:

plot(plot::Implicit3d(abs(x)^3+abs(y)^3+abs(z)^3 - 1,
                      x = -1..1, y=-1..1, z=-1..1),
     Axes = None, Scaling = Constrained)

Чтобы изменить количество строк, мы используем синтаксис, обрисованный в общих чертах выше:

plot(plot::Implicit3d(abs(x)^3+abs(y)^3+abs(z)^3 - 1,
                      x = -1..1, y=-1..1, z=-1..1,
                      XContours = [Automatic, 4],
                      YContours = [Automatic, 11],
                      ZContours = [Automatic, 21]),
     Axes = None, Scaling = Constrained)

Обратите внимание на то, что две из строк в экстремальных значениях и поэтому обычно не видимы.

Пример 3

Линии контура чертятся с помощью тех же настроек для LineWidth и LineColor, как строки параметра. В следующем примере мы используем измененную копию функционального объекта, который только отображает линии контура, но с настройками, отличающимися от соответствующего функционального объекта.

f := plot::Function3d(x^2 - 2*x*y - y^2, x = -2..2, y = -2..2):
plot(f, plot::modify(f, ZContours = [Automatic, 15],
                        LineWidth = 1,
                        LineColor = RGB::Gray30.[0.8],
                        XLinesVisible = FALSE,
                        YLinesVisible = FALSE,
                        Filled = FALSE))

При помощи преобразования, которое сопоставляет пробел в плоскость, мы можем использовать этот метод (путем установки еще некоторых опций), чтобы отобразить линии контура цвета высоты ниже графика функций:

f := plot::Function3d(8*sin(x-cos(y))+(x^2+x*y),
                      x = -3..3, y = -3..3, Submesh=[2,2]):
plot(f, plot::Transform3d([0, 0, -9], [1, 0, 0, 0, 1, 0, 0, 0, 0], 
             plot::modify(f, ZContours = [Automatic, 15],
                             LineWidth = 0.5,
                             LineColorType = Dichromatic,
                             LineColor = RGB::Red,
                             LineColor2 = RGB::CornflowerBlue,
                             XLinesVisible = FALSE,
                             YLinesVisible = FALSE,
                             Filled = FALSE)))

Смотрите также

Функции MuPAD