Scaling
, YXRatio
, ZXRatio
Масштабные коэффициенты
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.
Scaling | Наследованный | Automatic , Constrained или Unconstrained |
YXRatio , ZXRatio | Наследованный | Положительный действительный numberReal номер |
Объекты | Значения по умолчанию |
---|---|
plot::CoordinateSystem2d , plot::CoordinateSystem3d |
|
plot::Scene3d |
|
С Scaling = Constrained
вывод графических данных масштабируется как образцовые координаты, т.е. круг появляется как круги, сферы как сферы.
С Scaling = Unconstrained
вывод графических данных масштабируется независимо в каждом координатном направлении, таким образом, что графика соответствует оптимально области просмотра. Круги могут появиться как замещающие знаки, сферы как эллипсоиды.
Для Scaling = Unconstrained
масштабные коэффициенты различных координатных направлений в 3D графике могут быть установлены через атрибуты YXRatio
и ZXRatio
.
Если графика состоит из геометрических объектов, таких как круги, круговые диаграммы, сферы и т.д., установка Scaling = Constrained
является соответствующей. Это препятствует тому, чтобы круги были деформированы к замещающим знакам в выводе графических данных.
Для визуализации негеометрических данных (обычно, в графиках функций и т.д.), масштабирование, ограниченное к образцовым координатам, является обычно не соответствующим. Думайте о графике y = e x для, где значения y расширяют в области значений, которая является примерно. С Scaling = Constrained
вывод графических данных состоял бы из узкой вертикальной полосы с отношением стороны y : x = 22025 : 10
. Здесь, Scaling = Unconstrained
является соответствующим.
Значением по умолчанию является Scaling = Unconstrained
. Однако много “геометрических” объектов в библиотеке MuPAD® plot
заменяют эту настройку по умолчанию с помощью “механизма подсказки” (см. раздел Primitives Requesting Special Scene Атрибуты: “Подсказки” в этом документе). Каждый раз, когда такой объект построен в сцене, целая сцена использует Scaling = Constrained
. Полный список этих “геометрических объектов”, таких как круги, сферы, конусы и т.д. даны далее на этой странице справки.
С Scaling = Automatic
графика использует Scaling = Constrained
для графиков, в которых координатные области значений быть отображенными имеют отношение близко к 1 : 1
в 2D или 1 : 1 : 1
в 3D. В противном случае Scaling = Unconstrained
используется.
Атрибуты YXRatio = r1
и ZXRatio = r2
только имеют эффект в 3D с Scaling = Unconstrained
. Графическая сцена масштабируется к полю с отношениями стороны z : y : x = r2: r1: 1
. На экране ограничительная рамка сцены похожа на поле с этими отношениями стороны.
Мы строим сцену, содержащую функциональный график и некоторые круги, подсвечивающие экстремальное значение. Поскольку круг отправляет “подсказке” Scaling
= Constrained
, это масштабирование используется для целой сцены. Следовательно, круги появляются как круги:
plot(plot::Function2d(sin(x), x = 0 .. 2*PI), plot::Circle2d(0.2, [PI/2, 1], Color = RGB::Black), plot::Circle2d(0.2, [3*PI/2, -1], Color = RGB::Black), BorderWidth = 1.0*unit::mm, Header = "Scaling = Constrained")
С Scaling = UnConstrained
мы получаем лучший припадок графика в холсте. Однако круги деформированы к замещающим знакам:
plot(plot::Function2d(sin(x), x = 0 .. 2*PI), plot::Circle2d(0.2, [PI/2, 1], Color = RGB::Black), plot::Circle2d(0.2, [3*PI/2, -1], Color = RGB::Black), Scaling = Unconstrained, BorderWidth = 1.0*unit::mm, Header = "Scaling = Unconstrained")
Сфера типа plot::Sphere
отправляет “подсказке” Scaling
= Constrained
. С этим масштабированием, YXRatio
, ZXRatio
не имеет никакого эффекта:
s := plot::Sphere(1, [0, 0, 0]): plot(s, BorderWidth = 0.5*unit::mm, Header = "Scaling = Constrained", YXRatio = 3, ZXRatio = 10)
Мы используем Scaling = Unconstrained
. Со значениями по умолчанию YXRatio = 1
, ZXRatio = 2/3
, объекты в 3D сцене отображены как поле с отношениями стороны X : Y : Z = 3 : 3 : 2
:
plot(s, BorderWidth = 0.5*unit::mm, Scaling = Unconstrained, Header = "X:Y:Z = 3:3:2")
Мы запрашиваем различные масштабные коэффициенты:
plot(s, BorderWidth = 0.5*unit::mm, Header = "X:Y:Z = 5:5:1", Scaling = Unconstrained, YXRatio = 1, ZXRatio = 1/5, BorderWidth = 0.5*unit::mm)
plot(s, BorderWidth = 0.5*unit::mm, Header = "X:Y:Z = 7:3:1", Scaling = Unconstrained, YXRatio = 3/7, ZXRatio = 1/7, BorderWidth = 0.5*unit::mm)
delete s: