Layout
, Rows
, Columns
Расположение/размещение нескольких сцен в холсте
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.
Layout | Дополнительный | Absolute , Horizontal , Relative , Tabular или Vertical |
Columns , Rows | Дополнительный | Положительное целое число |
Объекты | Значения по умолчанию |
---|---|
plot::Canvas |
|
Layout
определяет расположение нескольких сцен в холсте.
Rows
определяет количество строк сцены в табличном расположении нескольких сцен.
Columns
определяет количество столбцов сцены в табличном расположении нескольких сцен.
Если холст содержит больше чем одну сцену, атрибут Layout
определяет, как сцены располагаются в холсте:
С настройкой по умолчанию Layout
= Tabular
, последовательность сцен в холсте располагается как таблица с несколькими столбцами и строками. Количество столбцов или строк может быть выбрано через атрибуты Columns
или Rows
, соответственно. Если ни один из этих атрибутов не дан, табличная схема размещения выбирает некоторые подходящие значения, автоматически.
Сцены заполнены в таблицу согласно стандартному западному порядку чтения, заполняя верхнюю строку слева направо, затем переходя к следующей строке и т.д.:
Layout
= Horizontal
является ярлыком для Layout
= Tabular
, Rows
= 1
. Сцены помещаются рядом в одной строке.
Layout
= Vertical
является ярлыком для Layout
= Tabular
, Columns
= 1
. Сцены помещенный друг ниже друга в отдельном столбце.
Настройки Layout
= Absolute
и Layout
= Relative
выключает автоматический режим размещения и позволяет располагать каждую сцену через атрибуты сцены Left
и Bottom
. Эти атрибуты определяют положение левого нижнего угла сцены и могут быть установлены отдельно для каждой сцены.
С Layout
= Absolute
, значения для левого нижнего угла сцены, а также ее ширины и высоты должны быть заданы как абсолютные физические длины, такие как Left
= 3.0*unit::mm
, Bottom
= 4.5*unit::mm
, Width
= 10*unit::cm
, Height
= 4*unit::inch
.
С Layout
= Relative
, эти значения должны быть заданы как части высоты холста и ширины. Например,
Layout = Relative
,
Left = 0.3, Bottom = 0.2
, Width = 0.5, Height = 0.5
эквивалентно
Layout = Absolut
,
Left = 0.3*canvaswidth
, Bottom = 0.2*canvasheight
,
Width = 0.5*canvaswidth
, Height = 0.5*canvasheight
,
где canvaswidth
и canvasheight
являются физической шириной и высотой холста.
С Layout
= Absolute
и Layout
= Relative
могут быть созданы перекрывающиеся сцены. В такой ситуации может быть полезно создать прозрачные сцены (без фона) через BackgroundTransparent
= TRUE
.
Мы задаем четыре сцены:
S1 := plot::Scene3d(plot::Sphere(1, [0, 0, 0], Color = RGB::Red), BorderWidth = 0.2*unit::mm, BorderColor = RGB::Black): S2 := plot::Scene3d(plot::Box(-1..1, -1..1, -1..1, Color = RGB::Green), BorderWidth = 0.2*unit::mm, BorderColor = RGB::Black): S3 := plot::Scene3d(plot::Cone(1, [0, 0, -1], [0, 0, 1], Color = RGB::Blue), BorderWidth = 0.2*unit::mm, BorderColor = RGB::Black): S4 := plot::Scene3d(plot::Cone(1, [0, 0, 1], [0, 0, -1], Color = RGB::Orange), BorderWidth = 0.2*unit::mm, BorderColor = RGB::Black):
Эти сцены расположены в холст в различных способах:
plot(S1, S2, S3, S4, Layout = Tabular, Height = 80*unit::mm, Width = 80*unit::mm):
plot(S1, S2, Layout = Horizontal, Height = 40*unit::mm, Width = 80*unit::mm):
plot(S1, S2, Layout = Vertical, Height = 80*unit::mm, Width = 40*unit::mm):
Для явного размещения сцен мы устанавливаем значения для Left
, Bottom
, Width
и атрибутов Height
сцен:
S1::Left := 0: S1::Bottom := 15*unit::mm: S1::Width := 60*unit::mm: S1::Height:= 60*unit::mm: S2::Left := 60*unit::mm: S2::Bottom := 0*unit::mm: S2::Width := 40*unit::mm: S2::Height:= 30*unit::mm: S3::Left := 60*unit::mm: S3::Bottom := 30*unit::mm: S3::Width := 40*unit::mm: S3::Height:= 30*unit::mm: S4::Left := 60*unit::mm: S4::Bottom := 60*unit::mm: S4::Width := 40*unit::mm: S4::Height:= 30*unit::mm:
Мы используем Layout = Absolute
:
plot(S1, S2, S3, S4, Layout = Absolute, BorderWidth = 0.5*unit::mm, BorderColor = RGB::Black, BackgroundColor = RGB::LightGrey, Height = 90*unit::mm, Width = 100*unit::mm):
Для Layout = Relative
сцена приписывает Left
, Width
, Bottom
, Height
должен быть дан как части ширины холста и высоты, соответственно:
S1::Left := 0: S1::Width := 0.6: S1::Bottom := 0: S1::Height := 0.6: S2::Left := 0: S2::Width := 0.5: S2::Bottom := 0.6: S2::Height := 0.4: S3::Left := 0.5: S3::Width := 0.5: S3::Bottom := 0.6: S3::Height := 0.4: S4::Left := 0.58: S4::Width := 0.4: S4::Bottom := 0.35: S4::Height := 0.4: S4::BackgroundTransparent := TRUE:
plot(S1, S2, S3, S4, Layout = Relative, BorderWidth = 0.5*unit::mm, BorderColor = RGB::Black, BackgroundColor = RGB::LightGrey, Height = 87*unit::mm, Width = 104*unit::mm):
delete S1, S2, S3, S4:
Мы демонстрируем размещение холста с Layout
= Relative
. Кроме заголовков сцены и расположения через Bottom
и Left
, все атрибуты сцены установлены в вызове plot
через спецификации, такие как plot::Scene2d::Width
и т.д. Это отличает атрибуты сцены от атрибутов холста Width
, BorderWidth
и т.д.
S1 := plot::Scene2d(plot::Function2d(sin(x), x = 0..2*PI), Left = 0.02, Bottom = 0.46, Header = "the sine function"): S2 := plot::Scene2d(plot::Function2d(cos(x), x = 0..2*PI), Left = 0.51, Bottom = 0.46, Header = "the cosine function"): S3 := plot::Scene2d(plot::Function2d(tan(x), x = 0..PI), Left = 0.02, Bottom = 0.02, Header = "the tan function"): S4 := plot::Scene2d(plot::Function2d(cot(x), x = 0..PI), Left = 0.51, Bottom = 0.02, Header = "the cot function"): plot(S1, S2, S3, S4, Layout = Relative, Width = 120*unit::mm, Height = 80*unit::mm, BorderWidth = 0.5*unit::mm, HeaderFont = ["Times New Roman", 18, Bold], Header = "trigonometric functions", plot::Scene2d::Width = 0.475, plot::Scene2d::Height = 0.42, plot::Scene2d::BorderWidth = 0.2*unit::mm, plot::Scene2d::HeaderFont = ["Times New Roman", Italic, 12]):
Наконец, мы демонстрируем атрибуты Rows
и Columns
. Автоматическое табличное размещение игнорирует явное расположение сцен и выбирает следующее расположение:
plot(S1, S2, S3, S4)
Мы явным образом запрашиваем три строки:
plot(S1, S2, S3, S4, Rows = 3)
Мы явным образом запрашиваем три столбца:
plot(S1, S2, S3, S4, Columns = 3)
Мы генерируем пустую сцену:
empty := plot::Scene2d(Axes = None):
Табличное размещение заполнено в пустыми сценами:
plot(S1, S2, empty, S3, empty, S4, Rows = 3)
plot(S1, S2, S3, empty, S4, empty, Columns = 3)
delete S1, S2, S3, S4, empty:
BorderColor
| BorderWidth
| Bottom
| BottomMargin
| Left
| LeftMargin
| Margin
| RightMargin
| Spacing
| TopMargin