Matlab绘制多x轴和多y轴图(双x双y轴/单x双y轴/双x单y轴图等),及坐标轴...
发布网友
发布时间:2024-10-19 13:03
我来回答
共1个回答
热心网友
时间:2024-10-19 13:17
Matlab中绘制多x轴和多y轴图,如双x双y轴、单x双y轴、双x单y轴图等,可以使用plot和scatter函数,这已经通过实践得到验证。在绘制轴的数量、位置(XAxisLocation和YAxisLocation)以及颜色时,其原理与绘制函数曲线的颜色和形式(scatter或plot)相同,都是通过句柄参数来实现的。
参考一些优秀的例子,如“Matlab绘制双x轴-双y轴图形攻略”、“请问我要画上下两个x轴的图,为什么不能用plot函数”、“创建包含多个x轴和y轴的图”,可以更好地理解这一过程。
1. 调整plot的坐标轴显示位置
通常,plot命令生成的图形中,x轴和y轴默认分别显示在正下方和左侧。现在要让x轴显示到正上方,y轴仍显示在左侧,就需要调整x轴的显示位置(y轴同理)。
可以使用以下语句:gca就是图片句柄,使用gca命令可访问Axes对象。通过设置XAxisLocation这个参数为top,就可以实现x轴显示到正上方。
2. 一些通用的设置(参见matlab官方文档)
(1)更改坐标轴范围
(2)反转坐标轴方向
(3)显示通过原点的轴线
3. 创建包含多个x轴和y轴的图
创建过程为:(1)先创建第一套坐标系(第1个x轴、y轴)和使用这个坐标系的函数。同时可根据意愿设定该坐标系颜色尺度等参数。(2)再使用axes()命令创建第二套坐标系(实质是基于第一套坐标系位置,指定第2个x轴、y轴的位置,并可选择设定坐标系颜色尺度等参数)(3)在第二套坐标系中,画出使用这个坐标系的函数。
实际上在第(1)步,使用plot等语句绘制函数时,会直接默认创建第一套坐标系,只不过特别地,我们要根据意愿设定坐标系颜色尺度等参数。注意在(3)中绘制使用第二坐标系函数前,最好使用hold on,以保持(1)中绘制的函数,避免将其删除。
以下通过例子进行讲解:
案例1:我自己写论文用到的,要绘制多个分开的scatter、legend,对应2x2y轴。
案例2:绘制2个plot,对应2x2y轴。整理自
案例3:绘制2个line,对应2x2y轴。整理自百度
注意使用line\plot\scatter,本质都是一样的,区别仅在于画出的是线还是散点,输入的x1/y1是函数表达式还是矩阵形式散点数据。
案例4:x轴刻度相同的双轴图。整理自百度