此示例显示如何使用持有
函数,以及如何在图形中使用tiledlayout
函数。的tiledlayout
功能从R2019b开始可用。如果您正在使用较早的版本,请使用子地块
功能相反。
默认情况下,新绘图清除现有绘图并重置轴属性,如标题。但是,你可以使用等等
命令将多个地块在相同的轴线上组合。例如,绘制两条线和一个散点图。然后将保持状态重置为off。
x=linspace(0,10,50);y1=sin(x);绘图(x,y1)标题(“合并情节”)持有在…上y2 = sin (x / 2);y = 2*sin(x);散射(x, y3)关
当保持状态为开启时,新绘图不会清除现有绘图或重置轴属性,如标题或轴标签。情节通过颜色和线条风格循环基于ColorOrder
和LineStyleOrder
轴的属性。轴限制和刻度值可能会调整以适应新数据。
控件可以在单个图形中显示多个轴tiledlayout
函数。此函数创建一个平铺图表布局,其中包含覆盖整个图形的不可见的平铺网格。每个贴图可以包含用于显示图形的坐标轴。创建布局后,调用nexttile
函数将坐标轴对象放置到布局中。然后调用绘图函数绘制到坐标轴中。例如,在2乘1的布局中创建两个地块。给每个情节添加一个标题。
注意:此代码使用tiledlayout
函数,该函数从R2019b开始提供。如果您使用的是早期版本,请使用子地块
功能相反。
x = linspace(0、10、50);日元= sin (x);y2 =兰德(50,1);tiledlayout (2, 1)%要求R2019b或更高版本%顶图nexttile情节(x, y₁)标题(“图1”)%底部情节nexttile散射(x, y2)标题(“图2”)
要创建跨多行或多列的图,请指定跨度
参数时nexttile
。例如,创建一个2乘2布局。打印到前两个平铺中。然后创建一个跨一行两列的打印。
x = linspace(0、10、50);日元= sin (x);y2 =兰德(50,1);%前两幅图平铺布局(2,2)%要求R2019b或更高版本Nexttile plot(x,y) Nexttile scatter(x,y2)%绘制跨度Nexttile ([1 2]) y2 = rand(50,1);情节(x, y2)
通过设置每个轴对象的属性来修改轴的外观。你可以通过调用nexttile
带有输出参数的函数。还可以将Axis对象指定为图形函数的第一个输入参数,以确保该函数以正确的轴为目标。
例如,创建两个图并将轴对象指定给变量ax₁
和ax2
.更改轴的字体大小和x第一个图的-axis颜色。在第二个地块上添加网格线。
x = linspace(0、10、50);日元= sin (x);y2 =兰德(50,1);tiledlayout (2, 1)%要求R2019b或更高版本%顶图ax₁= nexttile;情节(ax₁,x, y₁)标题(ax₁,“图1”ax₁。字形大小= 14;ax₁。XColor =“红色”;%底部情节ax2 = nexttile;散射(ax2 x, y2)标题(ax2,“图2”)网格(ax2,“上”)
可以通过指定间距来控制布局中瓷砖周围的间距填充
和TileSpacing
属性。例如,在2×2布局中显示四个绘图。
x=linspace(0,30);y1=sin(x);y2=sin(x/2);y3=sin(x/3);y4=sin(x/4);%建立情节t = tiledlayout (2, 2);%要求R2019b或更高版本Nexttile plot(x,y1) Nexttile plot(x,y2) Nexttile plot(x,y3) Nexttile plot(x,y4)
通过设置,减少布局周边和每个贴图周围的间距填充
和TileSpacing
属性“紧凑”
.
t、 填充物=“紧凑”; t、 平铺=“紧凑”;
可以在布局中显示共享标题和共享轴标签。创建一个2乘1布局t
.然后显示直线图和主干图。同步x通过调用linkaxes
函数。
x1=linspace(0,20100);y1=sin(x1);x2=3:17;y2=rand(1,15);%创建绘图。t = tiledlayout (2, 1);%要求R2019b或更高版本ax₁= nexttile;Plot (ax1,x1,y1) ax2 = nexttile;茎(ax2 x2, y2)%连接轴链接轴([ax1,ax2],“x”);
通过传递添加共享标题和共享轴标签t
到标题
,xlabel
和ylabel
功能。通过移除x-axis标记标签,并设置TileSpacing
的属性t
来“紧凑”
.
%添加共享标题和轴标签标题(t,“我的名字”)包含(t)“值”) ylabel (t)“y”)把地块移得更近一些xticklabels t.TileSpacing = (ax₁,{})“紧凑”;