- Matlab 教程
- MATLAB - 首页
- MATLAB - 概述
- MATLAB - 特性
- MATLAB - 环境设置
- MATLAB - 编辑器
- MATLAB - 在线
- MATLAB - 工作区
- MATLAB - 语法
- MATLAB - 变量
- MATLAB - 命令
- MATLAB - 数据类型
- MATLAB - 运算符
- MATLAB - 日期和时间
- MATLAB - 数字
- MATLAB - 随机数
- MATLAB - 字符串和字符
- MATLAB - 文本格式化
- MATLAB - 时间表
- MATLAB - M 文件
- MATLAB - 冒号表示法
- MATLAB - 数据导入
- MATLAB - 数据导出
- MATLAB - 数据归一化
- MATLAB - 预定义变量
- MATLAB - 决策
- MATLAB - 决策语句
- MATLAB - if end 语句
- MATLAB - if else 语句
- MATLAB - if…elseif else 语句
- MATLAB - 嵌套 if 语句
- MATLAB - switch 语句
- MATLAB - 嵌套 switch
- MATLAB - 循环
- MATLAB - 循环
- MATLAB - for 循环
- MATLAB - while 循环
- MATLAB - 嵌套循环
- MATLAB - break 语句
- MATLAB - continue 语句
- MATLAB - end 语句
- MATLAB - 数组
- MATLAB - 数组
- MATLAB - 向量
- MATLAB - 转置运算符
- MATLAB - 数组索引
- MATLAB - 多维数组
- MATLAB - 兼容数组
- MATLAB - 分类数组
- MATLAB - 元胞数组
- MATLAB - 矩阵
- MATLAB - 稀疏矩阵
- MATLAB - 表格
- MATLAB - 结构体
- MATLAB - 数组乘法
- MATLAB - 数组除法
- MATLAB - 数组函数
- MATLAB - 函数
- MATLAB - 函数
- MATLAB - 函数参数
- MATLAB - 匿名函数
- MATLAB - 嵌套函数
- MATLAB - return 语句
- MATLAB - 空函数
- MATLAB - 局部函数
- MATLAB - 全局变量
- MATLAB - 函数句柄
- MATLAB - 滤波器函数
- MATLAB - 阶乘
- MATLAB - 私有函数
- MATLAB - 子函数
- MATLAB - 递归函数
- MATLAB - 函数优先级顺序
- MATLAB - map 函数
- MATLAB - mean 函数
- MATLAB - end 函数
- MATLAB - 错误处理
- MATLAB - 错误处理
- MATLAB - try…catch 语句
- MATLAB - 调试
- MATLAB - 绘图
- MATLAB - 绘图
- MATLAB - 绘制数组
- MATLAB - 绘制向量
- MATLAB - 条形图
- MATLAB - 直方图
- MATLAB - 图形
- MATLAB - 2D 线性图
- MATLAB - 3D 图
- MATLAB - 格式化绘图
- MATLAB - 对数坐标轴绘图
- MATLAB - 绘制误差条
- MATLAB - 绘制 3D 等值线图
- MATLAB - 极坐标图
- MATLAB - 散点图
- MATLAB - 绘制表达式或函数
- MATLAB - 绘制矩形
- MATLAB - 绘制频谱图
- MATLAB - 绘制网格曲面
- MATLAB - 绘制正弦波
- MATLAB - 插值
- MATLAB - 插值
- MATLAB - 线性插值
- MATLAB - 2D 数组插值
- MATLAB - 3D 数组插值
- MATLAB - 多项式
- MATLAB - 多项式
- MATLAB - 多项式加法
- MATLAB - 多项式乘法
- MATLAB - 多项式除法
- MATLAB - 多项式的导数
- MATLAB - 变换
- MATLAB - 变换
- MATLAB - 拉普拉斯变换
- MATLAB - 拉普拉斯滤波器
- MATLAB - 高斯-拉普拉斯滤波器
- MATLAB - 逆傅里叶变换
- MATLAB - 傅里叶变换
- MATLAB - 快速傅里叶变换
- MATLAB - 2D 逆余弦变换
- MATLAB - 在坐标轴上添加图例
- MATLAB - 面向对象
- MATLAB - 面向对象编程
- MATLAB - 类和对象
- MATLAB - 函数重载
- MATLAB - 运算符重载
- MATLAB - 用户定义类
- MATLAB - 复制对象
- MATLAB - 代数
- MATLAB - 线性代数
- MATLAB - 高斯消元法
- MATLAB - 高斯-约旦消元法
- MATLAB - 简化行阶梯形
- MATLAB - 特征值和特征向量
- MATLAB - 积分
- MATLAB - 积分
- MATLAB - 二重积分
- MATLAB - 梯形法则
- MATLAB - 辛普森法则
- MATLAB - 杂项
- MATLAB - 微积分
- MATLAB - 微分
- MATLAB - 矩阵的逆
- MATLAB - GNU Octave
- MATLAB - Simulink
- MATLAB - 有用资源
- MATLAB - 快速指南
- MATLAB - 有用资源
- MATLAB - 讨论
MATLAB - 对数坐标轴绘图
MATLAB 中的对数坐标轴绘图提供了一个强大的工具,用于可视化跨越几个数量级的数
什么是对数刻度?
对数刻度基于数字的对数。在绘图的上下文中,对数刻度通过取每个数据点的对数来转换数据。
在处理表现出指数行为的现象时,对数刻度尤其有利。例如,在科学和工程应用中,信号强度、
以下是一些您可以绘制对数刻度的方法。
- 使用 loglog() 方法
- 使用 semilogx() 方法
使用 loglog() 方法
loglog() 方法有助于对数刻度绘图。以下是它的语法。
语法
loglog(X,Y) loglog(X,Y,LineSpec) loglog(X1,Y1,...,Xn,Yn) loglog(X1,Y1,LineSpec1,...,Xn,Yn,LineSpecn) loglog(Y) loglog(Y,LineSpec)
语法的详细解释如下:
loglog(X,Y) − MATLAB 中的 loglog 函数旨在创建使用 X 和 Y 向量中指定的坐标进行
loglog(X,Y,LineSpec) − 使用 loglog(X, Y, LineSpec) 允许您生成具有指定线型、
loglog(X1,Y1,...,Xn,Yn) − 语法 loglog(X1, Y1, ..., Xn, Yn) 允许您在共享的
loglog(X1,Y1,LineSpec1,...,Xn,Yn,LineSpecn) − 允许您为各个 x-y 对分配不同的
loglog(Y) − 使用 loglog(Y) 时,该函数会针对一组隐式 x 坐标绘制 Y。如果 Y 是向量,
loglog(Y,LineSpec) − 涉及针对隐式 x 坐标绘制 Y,同时通过指定的 LineSpec 定义线型、
让我们对上面提到的每个语法都举例说明。
示例 1:使用 loglog(X,Y)
代码如下:
X = logspace(1, 3, 100); Y = 2*X.^2; loglog(X, Y);
这里,loglog 函数用于创建在 x 轴和 y 轴上都使用以 10 为底的对数刻度的绘图。
当您在 matlab 命令窗口中执行代码时,输出为:
此处的代码为:
X = logspace(1, 3, 100); Y = 2*X.^2; loglog(X, Y, 'r--o');
在此示例中,loglog(X, Y, 'r--o') 语法用于创建在 x 轴和 y 轴上都使用以 10 为底的对数刻度的
当您在 matlab 命令窗口中执行代码时,输出为:
示例 2:使用 loglog(X1,Y1,...,Xn,Yn)
代码如下:
X1 = logspace(1, 3, 100); Y1 = 2*X1.^2; X2 = logspace(1, 3, 100); Y2 = 500./X2; loglog(X1, Y1, 'b-', X2, Y2, 'r--');
在此示例中,loglog(X1, Y1, 'b-', X2, Y2, 'r--') 用于创建在以 10 为底的对数刻度上绘制两个数据集
当您在 matlab 命令窗口中执行代码时,输出为:
示例 3:使用 loglog(X1,Y1,LineSpec1,...,Xn,Yn,LineSpecn)
上述语法的代码如下所示:
X1 = logspace(1, 3, 100); Y1 = 2*X1.^2; X2 = logspace(1, 3, 100); Y2 = 500./X2; loglog(X1, Y1, 'bo-', X2, Y2, 'r--');
在此示例中,loglog(X1, Y1, 'bo-', X2, Y2, 'r--') 用于创建在以 10 为底的对数刻度上绘制两个数据集
当您在 matlab 命令窗口中执行代码时,输出为:
示例 4:使用 loglog(Y)
在此示例中,loglog(Y_vector) 用于为向量 (Y_vector) 创建 loglog 绘图。
Y_vector = logspace(1, 3, 100); loglog(Y_vector);
当您在 matlab 命令窗口中执行相同的操作时,输出为:
示例 5:使用 loglog(Y,LineSpec)
上述语法的代码如下:
Y_vector = logspace(1, 3, 10); loglog(Y_vector, 'o-', 'LineWidth', 2, 'MarkerSize', 8, 'MarkerFaceColor', 'r');
在此示例中,loglog(Y_vector, 'o-', 'LineWidth', 2, 'MarkerSize', 8, 'MarkerFaceColor', 'r') 用于为向
当您在 matlab 命令窗口中执行相同的操作时,输出为:
使用 semilogx() 方法
MATLAB 中的 semilogx() 函数用于创建在 x 轴上以对数刻度显示,而在 y 轴上以线性刻度显示的
语法
以下是使用 semilogx() 方法的语法。
semilogx(X,Y) semilogx(X,Y,LineSpec) semilogx(X1,Y1,...,Xn,Yn) semilogx(X1,Y1,LineSpec1,...,Xn,Yn,LineSpecn) semilogx(Y) semilogx(Y,LineSpec)
语法的详细解释如下:
semilogx(X,Y) − 它创建一个在 x 轴上使用以 10 为底的对数刻度,在 y 轴上使用线性刻度
semilogx(X,Y,LineSpec) − 使用 semilogx(X, Y, LineSpec) 生成具有指定线型、标记和
semilogx(X1,Y1,...,Xn,Yn) − 它有助于在共享的一组轴上绘制多组 x 和 y 坐标。此语法形
semilogx(X1,Y1,LineSpec1,...,Xn,Yn,LineSpecn) − 它为各个 x-y 对分配不同的线型、
semilogx(Y) − 以图形方式表示 Y 相对于一组固有的 x 坐标。对于向量 Y,x 坐标范围从 1 到 Y 的长度。当 Y 是矩阵时,每一列在图上贡献一条单独的线,并且 x 坐标从 1 扩展到 Y 的行数。
semilogx(Y,LineSpec) − semilogx(Y, LineSpec) 使用隐式 x 坐标描绘 Y 中的数据,同时允许通过指定的 LineSpec 自定义线型、标记和颜色。
让我们看看每种语法的几个示例。
示例 1:使用 semilogx(X,Y)
上述语法的代码如下:
X = logspace(1, 3, 100); Y = 2*X.^2; semilogx(X, Y);
在此示例中,semilogx(X, Y) 创建一个图,其中 x 轴使用以 10 为底的对数刻度表示,y 轴使用线性刻度。
当您在 matlab 命令窗口中执行相同的操作时,输出为:
当您在 matlab 命令窗口中执行相同的操作时,输出为:
示例 2:使用 semilogx(X,Y,LineSpec)
上述语法的代码为 −
X = logspace(1, 3, 100); Y = 2*X.^2; semilogx(X, Y, 'r--o');
在此示例中,semilogx(X, Y, 'r--o') 生成一个图,其中 x 轴采用对数刻度,y 轴采用线性刻度。LineSpec 参数 ('r--o') 指定一条红色虚线,带有圆形标记。这允许您使用定义的线型、标记和颜色自定义绘图的外观。
示例 3:使用 semilogx(X1,Y1,...,Xn,Yn)
上述语法的代码为 −
X1 = logspace(1, 3, 100); Y1 = 2*X1.^2; X2 = logspace(1, 3, 100); Y2 = 1.5*X2.^1.5; semilogx(X1, Y1, 'b-', X2, Y2, 'r--');
在此示例中,semilogx(X1, Y1, 'b-', X2, Y2, 'r--') 用于创建包含两个数据集的图,x 轴采用以 10 为底的对数刻度,y 轴采用线性刻度。蓝色线表示第一个数据集,红色虚线表示第二个数据集。
当您在 matlab 命令窗口中执行相同的操作时,输出为:
示例 4:使用 semilogx(X1,Y1,LineSpec1,...,Xn,Yn,LineSpecn)
上述语法的代码为 −
X1 = logspace(1, 3, 100); Y1 = 2*X1.^2; X2 = logspace(1, 3, 100); Y2 = 1.5*X1.^1.5; semilogx(X1, Y1, 'b-o', X2, Y2, 'r--');
在此示例中,semilogx(X1, Y1, 'b-o', X2, Y2, 'r--') 用于创建包含两个数据集的图,x 轴采用以 10 为底的对数刻度,y 轴采用线性刻度。
当您在 matlab 命令窗口中执行代码时,输出为:
示例 5:semilogx(Y)
上述语法的代码如下:
Y_vector = logspace(1, 3, 10); semilogx(Y_vector);
在此示例中,semilogx(Y_vector) 用于为向量 (Y_vector) 创建一个图。代码执行后,输出如下所示 −
示例 6:semilogx(Y)
上述代码的语法 −
Y = logspace(1, 3, 10); semilogx(Y, 'r--o', 'LineWidth', 2, 'MarkerSize', 8, 'MarkerFaceColor', 'b');
在此示例中,semilogx(Y, 'r--o', 'LineWidth', 2, 'MarkerSize', 8, 'MarkerFaceColor', 'b') 用于为向量 (Y) 创建一个图。LineSpec 参数指定红色虚线,带有圆形标记。还自定义了线宽、标记大小和标记填充颜色等其他样式参数。
当您在 matlab 命令窗口中执行代码时,输出为: