XContours
, YContours
, ZContours
Линии контура в постоянных x значениях
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
XContours , YContours , ZContours | Дополнительный | Список арифметических выражений |
Объекты | Значения по умолчанию |
---|---|
plot::Implicit3d |
|
plot::Cylindrical , plot::Function3d , plot::Spherical Поверхность графика , plot::XRotate , plot::ZRotate |
|
XContours
, YContours
, и ZContours
вызовите линии контура на объектах подложки в постоянном x, y или z - значения, соответственно.
Путем установки этих атрибутов много объектов подложки (таких как неявные поверхности, функциональные объекты и т.д.) могут быть проинструктированы, чтобы отобразить линии контура.
Установкой ZContours = [z1, z2, …]
, линии контура можно требовать в определенных местах. Это продемонстрировано в Примере 1.
ZContours = [Automatic, n]
причины линии контура n, которые будут равномерно распределены вдоль области значений значений z объекта. См. Пример 2.
График функций высотой использования по умолчанию, окрашивающей и линиями 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])
В предыдущем примере мы устанавливаем значения 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)
Обратите внимание на то, что две из линий в экстремальных значениях и поэтому обычно не видимы.
Линии контура чертятся с помощью тех же настроек в 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)))