matlab plot函数详解_MATLAB的plot

matlab plot函数详解_MATLAB的plot本文介绍了MATLAB中plot函数的用法,方便日后适用

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

1 plot 函数语法

plot:绘制二维线图

NO.1 绘制横轴为X,竖轴为Y二维线图,Y值与X值一一对应。

plot(X,Y)

如果 X 和 Y 都是向量,则它们的长度必须相同。plot 函数绘制 Y 对 X 的图。

如果 X 和 Y 均为矩阵,则它们的大小必须相同。plot 函数绘制 Y 的列对 X 的列的图。

如果 X 或 Y 中的一个是向量,而另一个是矩阵,则矩阵的各维中必须有一维与向量的长度相等。如果矩阵的行数等于向量长度,则 plot 函数绘制矩阵中的每一列对向量的图。如果矩阵的列数等于向量长度,则该函数绘制矩阵中的每一行对向量的图。如果矩阵为方阵,则该函数绘制每一列对向量的图。

如果 X 或 Y 一个为标量,而另一个为标量或向量,则 plot 函数会绘制离散点。但是,要查看这些点,必须指定标记符号,例如 plot(X,Y,‘o’)。

NO.2 设置线型、标记符号和颜色。

plot(X,Y,LineSpec)

LineSpec — 线型、标记和颜色

线型、标记和颜色,指定为包含符号的字符向量或字符串。符号可以按任意顺序显示。不需要同时指定所有三个特征(线型、标记和颜色)。例如,如果忽略线型,只指定标记,则绘图只显示标记,不显示线条。

示例: ‘–or’ 是带有圆形标记的红色虚线

线型 说明
– (默认) 实线
虚线
: 点线
-. 点划线
标记 说明
none(默认) 不显示
o 圆圈
+ 加号
* 星号
.
x 叉号
_ 水平线条
| 垂直线条
s 方形
d 菱形
^ 上三角
v 下三角
> 右三角
< 左三角
p 五角形
h 六角形
颜色 说明
r 红色
g 绿色
b 蓝色
w 白色
k 黑色
y 黄色
m 品红/洋红
c 青蓝

NO.3 绘制横轴为X,竖轴为Y的多组二维线图,Y值与X值一一对应,所有线条都使用相同的坐标区。

plot(X1,Y1,...,Xn,Yn)

NO.4 设置每个线条的线型、标记符号和颜色。

plot(X1,Y1,LineSpec1,...,Xn,Yn,LineSpecn)

可以混用 X、Y、LineSpec 三元组和 X、Y 对组:例如

plot(X1,Y1,X2,Y2,LineSpec2,X3,Y3)

NO.5 创建 Y 中数据对每个值索引的二维线图。

plot(Y)

如果 Y 是向量,x 轴的刻度范围是从 1 至 length(Y)。

如果 Y 是矩阵,则 plot 函数绘制 Y 中各列对其行号的图。x 轴的刻度范围是从 1 到 Y 的行数。

如果 Y 是复数,则 plot 函数绘制 Y 的虚部对 Y 的实部的图,使得 plot(Y) 等效于 plot(real(Y),imag(Y))。

也可以设置线形、标记和颜色

plot(Y,LineSpec)

NO.6 使用一个或多个 Name,Value 对组参数指定线条属性。如线宽、线形、线条颜色等。

plot(___,Name,Value)

2 示例

2.1 plot(X,Y) | plot(X1,Y1,X2,Y2)

以绘制三角函数曲线为例

代码1:

clc;
clear;

% 绘制
x = linspace(0,2*pi);
y = sin(x);
plot(x,y)
title('y=sin(x)')
xlabel('X(m)')
ylabel('Y(m)')

结果展示:

在这里插入图片描述

代码2:

clc;
clear;

% 绘制
x = linspace(0,2*pi);
y1 = sin(x);
y2 = cos(x);
plot(x,y1,x,y2)
title('y1=sin(x), y2=cos(x)')
xlabel('X(m)')
ylabel('Y(m)')

结果展示:

在这里插入图片描述

2.2 plot(X,Y.Linespec) | plot(X1,Y1,Linespec1,X2,Y2,Linespec2)

设置线型、标记符号和颜色

代码1:

clc;
clear;

% 绘制
x = linspace(0,2*pi);
y1 = sin(x);
y2 = cos(x);
plot(x,y1,'-.m')
hold on;
plot(x,y2,'*g')
title('y1=sin(x),y2=cos(x)')
xlabel('X(m)')
ylabel('Y(m)')

与下面代码2输出结果一致

代码2:

clc;
clear;

% 绘制
x = linspace(0,2*pi);
y1 = sin(x);
y2 = cos(x);
plot(x,y1,'-.m',x,y2,'*g')
title('y1=sin(x),y2=cos(x)')
xlabel('X(m)')
ylabel('Y(m)')

结果展示:
在这里插入图片描述

2.3 plot(X) | plot(X, Linespec)

代码1:

clc;
clear;
x = linspace(0,2*pi);
plot(x,'xr')
xlabel('X(m)')
ylabel('Y(m)')

输出结果:

在这里插入图片描述
代码2:

clc;
clear;

% 绘制
x = linspace(0,2*pi);
plot(x,'--r')
xlabel('X(m)')
ylabel('Y(m)')

结果展示:

在这里插入图片描述

2.4 plot(___,Name,Value)

2.4.1 在特定的数据点显示标记

关键字:

MarkerIndices :要显示标记的数据点的索引,默认 1:length(YData),即显示所有数据点标记

注意: 要显示数据点标记,首先要指定标记符号

示例:

plot(x,y,'-o','MarkerIndices',[1 5 10]) 			 % 在第1、第5和第10个数据点处显示圆形标记。
plot(x,y,'-x','MarkerIndices',1:3:length(y))		 % 每隔2个数据点显示1个交叉标记。
plot(x,y,'Marker','square','MarkerIndices',5) 	 	 % 在第5个数据点显示1个正方形标记。

代码:

clc;
clear;

% 绘制
x = linspace(0,2*pi);
y = sin(x);
plot(x,y,'--om','MarkerIndices',1:5:length(y))	% 每隔 4 个点显示标记
title('y = sin(x)')
xlabel('X(m)')
ylabel('Y(m)')

结果展示:
在这里插入图片描述

2.4.2 指定线宽、标记大小和标记颜色

关键字:
LineWidth:线宽,默认 0.5 磅
MarkerSize:标记大小,默认 6 磅
MarkerEdgeColor:标记轮廓颜色
MarkerFaceColor:标记填充颜色

代码:

clc;
clear;

% 绘制
x = linspace(0,2*pi);
y = sin(x)-tan(sin(x));
plot(x,y,'-or','MarkerIndices',1:8:length(y),'LineWidth',3,'MarkerSize',10,'MarkerEdgeColor','b','MarkerFaceColor','g')
title('y = sin(x)-tan(sin(x))')
xlabel('X(m)')
ylabel('Y(m)')

输出结果:

在这里插入图片描述

3 常用颜色对照表

颜色名称 简称 RGB三元组 十六进制颜色代码 外观
red r [1 0 0] ‘#FF0000’
green g [0 1 0] ‘#00FF00’
blue b [0 0 1] ‘#0000FF’
cyan c [0 1 1] ‘#00FFFF’
magenta m [1 0 1] ‘#FF00FF’
yellow y [1 1 0] ‘#FFFF00’
black k [0 0 0] ‘#000000’
white w [1 1 1] ‘#FFFFFF’
RGB三元组 十六进制颜色代码 外观
[0 0.4470 0.7410] ‘#0072BD’
[0.8500 0.3250 0.0980] ‘#D95319’
[0.9290 0.6940 0.1250] ‘#EDB120’
[0.4940 0.1840 0.5560] ‘#7E2F8E’
[0.4660 0.6740 0.1880] ‘#77AC30’
[0.3010 0.7450 0.9330] ‘#4DBEEE’
[0.6350 0.0780 0.1840] ‘#A2142F’

4 plot3 函数

plot3 函数绘制三维点或线图,用法与 plot 函数大同小异,具体细节可参考 https://ww2.mathworks.cn/help/matlab/ref/plot3.html


相关链接:

https://ww2.mathworks.cn/help/matlab/ref/plot.html

https://www.runoob.com/html/html-tutorial.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/181426.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pycharm激活码2021【永久激活】

    (pycharm激活码2021)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月22日
    150
  • 60道计算机网络面试题(附答案,背诵版)

    60道计算机网络面试题(附答案,背诵版)在大概三个月前,我在我网站就整理了计算机网络的面试题了,不过那时候才整理了20道核心的,大概过了两个月,我花了大半天去找计算机网络的面试题,因为20道肯定不够,于是我整理到了42道。不过最近我不是在整理各个公司的面经嘛?发现42道还是漏掉了不少,于是这周就又把自己整理面经看到的计算机网络面试题又补上了,一共60多道。只要把这些面试题拿下,计算机网络基本就差不多了,面试题如下?1.OSI的七层模型分别是?各自的功能是什么?2.为什么需要三次握手?两次不行?3.为什么需要四次

    2022年6月24日
    22
  • easyUI的combobox实现级联

    easyUI的combobox实现级联easyUI的combobox实现级联

    2022年10月22日
    0
  • vue 设置定时执行函数

    vue 设置定时执行函数varapp=newVue({el:’#app’,data:{},filters:{},created:function(){setInterval(this.timer,1000);…

    2022年7月17日
    69
  • 产品经理面试内容_产品专员简历

    产品经理面试内容_产品专员简历前言经过深思熟路后,本渣决定参加放弃研发转投产品了。本科,硕士所学的东西也不能说可惜,这些都会帮助我在产品岗位更进一步。那么在研究与学习之下,我来研究一下产品经理的简历如何投能不当炮灰。(现在写好加深一下印象,也方便一下一年后写简历参加秋招的小周。)思路:PM的面试简历,就是一份产品产品用户:HR,业务主管简历被HR的阅读时间很短,15S左右,且较为粗略。所以就需要满足d…

    2025年7月11日
    1
  • 基于FPGA的SDRAM控制器设计(4)[通俗易懂]

    基于FPGA完整SDRAM控制器SDRAM控制器接口简述自动读写模块的框图SDRAM控制器完整代码SDRAM控制器的测试代码仿真结果SDRAM控制器接口简述完整的SDRAM控制器的模块框图如下:前面的三篇文章,我们已经简述了基本的SDRAM的基本操作。这里总结一下SDRAM的几个模块,SDRAM的上电初始化,自刷新、读写模块、顶层仲裁控制。了解了上面的操作,我们已经可以完成SDRAM控制器…

    2022年4月13日
    30

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号