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

简介: 【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', '-');



绘图结果 :


image.png






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


绘图结果 :


image.png

目录
相关文章
|
9天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于负相关误差函数的4集成BP神经网络matlab建模与仿真
**算法预览:** 图像显示无水印的2022a版MATLAB运行结果 **软件版本:** MATLAB 2022a **核心代码片段:** 省略展示 **理论概述:** NCL集成BP网络利用负相关提升泛化,结合多个弱模型减少错误关联。通过λ参数控制模型间负相关程度,λ>0增强集成效果,提高预测准确性和系统稳健性。
|
16天前
|
算法 数据可视化 数据挖掘
MATLAB中常用的数学函数及其应用示例
MATLAB中常用的数学函数及其应用示例
基于高通滤波器的ECG信号滤波及心率统计matlab仿真
**摘要:** 使用MATLAB2022a,实施高通滤波对ECG信号预处理,消除基线漂移,随后分析心率。系统仿真展示效果,核心代码涉及IIR HPF设计,如二阶滤波器的差分方程。通过滤波后的信号,检测R波计算RR间期,从而得到心率。滤波与R波检测是心电生理研究的关键步骤,平衡滤波性能与计算资源是设计挑战。
|
18天前
|
机器学习/深度学习 数据可视化 算法
探索MATLAB世界:掌握基础知识与实用技能(1. MATLAB环境与基本操作 2. 数据类型与变量 3. 条件与循环,1. 数据分析与统计 2. 图像处理与计算机视觉 3. 信号处理与控制系统)
探索MATLAB世界:掌握基础知识与实用技能(1. MATLAB环境与基本操作 2. 数据类型与变量 3. 条件与循环,1. 数据分析与统计 2. 图像处理与计算机视觉 3. 信号处理与控制系统)
15 0
|
20天前
|
数据处理
MATLAB 论文绘图规范标注
MATLAB 论文绘图规范标注
|
2月前
|
Serverless
基于Logistic函数的负荷需求响应(matlab代码)
基于Logistic函数的负荷需求响应(matlab代码)
|
2月前
|
数据安全/隐私保护
地震波功率谱密度函数、功率谱密度曲线,反应谱转功率谱,matlab代码
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
|
2月前
|
调度
知识分享|分段函数线性化及matlab测试
知识分享|分段函数线性化及matlab测试
|
2月前
|
数据安全/隐私保护
耐震时程曲线,matlab代码,自定义反应谱与地震波,优化源代码,地震波耐震时程曲线
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
基于混合整数规划的微网储能电池容量规划(matlab代码)
基于混合整数规划的微网储能电池容量规划(matlab代码)