0
点赞
收藏
分享

微信扫一扫

【MATLAB】基本绘图 ( 绘制多图 | 设置图形对话框在 Windows 界面的位置和大小 | 在一个图形上绘制多个小图形 )



文章目录

  • ​​一、绘制多图​​
  • ​​1、绘制多图​​
  • ​​2、代码示例​​
  • ​​二、设置图形对话框在 Windows 界面的位置和大小​​
  • ​​三、在一个图形上绘制多个小图形​​






一、绘制多图




1、绘制多图



存在一种绘图情况 , 需要同时展示两条曲线 , 但是二者的 x x x 或 y y y 轴差距过大 , 需要绘制在两个图中 ;

在绘制每个图前 , 先调用一次 figure , 就会在新的对话框中生成一张新的图形 ;

使用示例如下 :

% 绘制第一个图像 , 平方函数
figure, plot(x, y1);

% 绘制第二个图像 , 指数函授
figure , plot(x, y2)



注意事项 :

分成两个图形绘制时 , 需要注意 , 如果要设置 gcf , gca , 注意和获取的是哪个绘图对象 ;

在第一个 figure 与第二个 figure 之间调用 gca , 获取的是第一个 figure 图形的坐标轴对象 ;

在第二个 figure 之后调用 gca , 获取的是第二个 figure 图形的坐标轴对象 ;




2、代码示例



完整代码示例 :

% 生成 x 轴数据 , -10 ~ 10 , 步长 0.1
x = -10 : 0.1 : 10;

% 平方函数
y1 = x.^2 - 8;

% 指数运算 , e 为底的指数函数
y2 = exp(x);

% 绘制第一个图像 , 平方函数
figure, plot(x, y1);

% 绘制第二个图像 , 指数函授
figure , plot(x, y2)



绘图结果 :

【MATLAB】基本绘图 ( 绘制多图 | 设置图形对话框在 Windows 界面的位置和大小 | 在一个图形上绘制多个小图形 )_绘制图形






二、设置图形对话框在 Windows 界面的位置和大小


使用 figure 函数可以设置图形的位置和大小 ;

用法如下 :

figure('Position', [left, bottom, width, height]);

left 参数 :​ 图形对话框在 Windows 界面中 , 距离屏幕左侧的距离 ;

bottom 参数 :​ 图形对话框在 Windows 界面中 , 距离屏幕底部的距离 ;

width 参数 :​ 图形对话框宽度 ;

height 参数 :​ 图形对话框高度 ;

【MATLAB】基本绘图 ( 绘制多图 | 设置图形对话框在 Windows 界面的位置和大小 | 在一个图形上绘制多个小图形 )_绘制图形_02


代码示例 :

% 生成 x 轴数据 , -10 ~ 10 , 步长 0.1
x = -10 : 0.1 : 10;

% 平方函数
y1 = x.^2 - 8;

% 在屏幕左下角绘制对话框 , 宽高都是 500 像素
figure('Position', [0,0,500,500]);

% 在指定位置绘制平方函数
plot(x, y1);



绘图效果 :​ 在屏幕左下角绘制对话框 , 对话框的宽高都是 500 像素 ;

【MATLAB】基本绘图 ( 绘制多图 | 设置图形对话框在 Windows 界面的位置和大小 | 在一个图形上绘制多个小图形 )_坐标轴_03






三、在一个图形上绘制多个小图形


使用 subplot 可以指定内部的小图形 ;

subplot(m, n, 1);

m 参数 :​ 行数 ;

n 参数与 :​ 列数 ;

第三个参数是 1 1 1 ~ m × n m \times n m×n 之间的数值 ; 在本示例中是 1 1 1 ~ 6 6 6 之间的数值 ;

【MATLAB】基本绘图 ( 绘制多图 | 设置图形对话框在 Windows 界面的位置和大小 | 在一个图形上绘制多个小图形 )_坐标轴_04



代码示例 :

% 生成 x 轴数据 , -10 ~ 10 , 步长 0.1
t = 0 : 0.1 : 2 * pi;

% x,y 轴变量
x = 3 * cos(t);
y = sin(t);

% 在第一行第一列绘制图形, 坐标轴正常 normal
subplot(2,2,1);
plot(x,y);
axis normal

% 在第一行第二列绘制图形, 坐标轴方形 square
subplot(2,2,2);
plot(x,y);
axis square

% 在第二行第一列绘制图形, 坐标轴 equal
subplot(2,2,3);
plot(x,y);
axis equal

% 在第二行第二列绘制图形, 坐标轴 equal tight
subplot(2,2,4);
plot(x,y);
axis equal tight



执行结果 :

【MATLAB】基本绘图 ( 绘制多图 | 设置图形对话框在 Windows 界面的位置和大小 | 在一个图形上绘制多个小图形 )_绘制图形_05

【MATLAB】基本绘图 ( 绘制多图 | 设置图形对话框在 Windows 界面的位置和大小 | 在一个图形上绘制多个小图形 )_绘制图形_06



上面绘制出来的图的效果 , 最正确的是第 3 3 3 张图的样式 ​equal​ , x x x 轴上长度 1 1 1 与 y y y 轴上长度 1 1 1 相同 , 是最直观的效果 ;

square​ 样式表示的是坐标轴的 x x x 轴和 y y y 轴长度相同 ;

equal tight​ 样式是在 equal 样式基础上 , 贴边切割有效曲线图形 ;


举报

相关推荐

0 条评论