【MATLAB】进阶绘图 ( 双 y 轴图形 | plotyy 函数 | Histogram 统计图形 | hist 函数 )

网友投稿 884 2022-05-30

文章目录

一、双 y 轴图

1、plotyy 函数

2、使用场景

3、代码示例

二、Histogram 统计图形

1、hist 函数

2、代码示例

一、双 y 轴图

1、plotyy 函数

plotyy 函数参考文档 : https://ww2.mathworks.cn/help/matlab/ref/plotyy.html

( 过时了 , 这里简单介绍下 , 官方推荐使用 yyaxis 函数 )

plotyy 函数绘制的坐标轴图形有两个 y y y 轴 ;

plotyy 语法 : 返回值有 3 3 3 个元素 ;

【MATLAB】进阶绘图 ( 双 y 轴图形 | plotyy 函数 | Histogram 统计图形 | hist 函数 )

AX 是坐标系 axis 句柄值 ;

曲线 1 的句柄值是 H1 ;

曲线 2 的句柄值是 H2

% 使用 plotyy 绘制两条曲线 % AX 是坐标系 axis 句柄值 % 曲线 1 的句柄值是 H1 % 曲线 2 的句柄值是 H2 [AX, H1, H2] = plotyy(x, y1, x, y2);

1

2

3

4

5

2、使用场景

使用场景 :

绘制如下公式 :

y = a e − b x sin ⁡ ( c x ) y = a e^{-bx} \sin(cx) y=ae−bxsin(cx)

同时绘制不同的 a , b , c a,b, c a,b,c 参数的曲线 ,

曲线 1 1 1 : y = 200 e − 0.05 x sin ⁡ ( x ) y = 200 e^{-0.05x} \sin(x) y=200e−0.05xsin(x)

曲线 2 2 2 : y = 0.8 e − 0.5 x sin ⁡ ( 10 x ) y = 0.8 e^{-0.5x} \sin(10x) y=0.8e−0.5xsin(10x)

在一个坐标轴图中 , 两个曲线的取值范围差距过大 , 曲线 1 1 1 取值范围 [ − 200 , 200 ] [-200 , 200] [−200,200] , 曲线 2 2 2 取值范围 [ − 0.8 , 0.8 ] [-0.8, 0.8] [−0.8,0.8] , 如果使用相同的坐标系 , 如果在 [ − 200 , 200 ] [-200 , 200] [−200,200] 的坐标轴上绘制曲线 2 2 2 基本就看不到了 ;

3、代码示例

代码示例 :

% x 轴取值 x = 0 : 0.01 : 20; % 曲线 1 对应的 y 值 y1 = 200 * exp (-0.05 * x) .* sin(x); % 曲线 2 对应的 y 值 y2 = 0.8 * exp (-0.5 * x) .* sin(10 * x); % 使用 plotyy 绘制两条曲线 % AX 是坐标系 axis 句柄值 % 曲线 1 的句柄值是 H1 % 曲线 2 的句柄值是 H2 [AX, H1, H2] = plotyy(x, y1, x, y2); % 修改坐标轴标注 , 通过 AX 句柄值设置左右两侧 y 轴标注 set(get(AX(1), 'Ylabel'), 'String', '左侧 Y1 曲线'); set(get(AX(2), 'Ylabel'), 'String', '右侧 Y2 曲线'); % 设置标题 title('双 y 轴曲线'); % 设置曲线 1 样式 , 使用 H1 句柄设置 , 虚线 set(H1, 'LineStyle', '--'); % 设置曲线 2 样式 , 使用 H1 句柄设置 , 实线 set(H2, 'LineStyle', '-');

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

绘图结果 :

二、Histogram 统计图形

1、hist 函数

hist 函数参考文档 : https://ww2.mathworks.cn/help/matlab/ref/hist.html

2、代码示例

代码示例 :

% 随机生成 1 ~ 1000 之间的数字 y = randn (1, 1000); % 绘制图像 1 subplot (2, 1, 1); % 绘制直方图 , 10 个元素 hist (y, 10); % 绘制图像 2 subplot (2, 1, 2); % 绘制直方图 , 50 个元素 hist (y, 50);

1

2

3

4

5

6

7

8

9

10

11

12

13

14

绘图结果 :

MATLAB

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:玩转HDFS常用命令
下一篇:【Flutter】Flutter 资源文件使用 ( 导入资源图片 | 使用图片资源 )
相关文章