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

文章目录

一、双 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 yy 轴 ;



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


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




2、使用场景


使用场景 :


绘制如下公式 :


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

y=ae

−bx

sin(cx)


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


曲线 1 11 :

y = 200 e − 0.05 x sin ⁡ ( x ) y = 200 e^{-0.05x} \sin(x)

y=200e

−0.05x

sin(x)


曲线 2 22 :

y = 0.8 e − 0.5 x sin ⁡ ( 10 x ) y = 0.8 e^{-0.5x} \sin(10x)

y=0.8e

−0.5x

sin(10x)


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




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', '-');



绘图结果 :


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






二、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);


绘图结果 :


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

上一篇:A == B ?(杭州电2054)


下一篇:未找到导入的项目“C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\DotNet\Microsoft.DotNet.Props”