关于plot函数的一切(史上最全总结)

2024-05-02 17:38
文章标签 函数 总结 最全 史上 plot

本文主要是介绍关于plot函数的一切(史上最全总结),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

matlab的图形绘制是非常重要的一种功能,所有关于数据分析挖掘方面一定会用到此项功能。

在我们开始第三章数据可视化之前,必须先把plot函数必须弄得清清楚楚才行,下面让我们看看关于它的一切吧!

一.plot

首先,plot有几种形式

(1)plot(X,Y):创建数据Y相对于中相应值X的二维折线图

其中,若X,Y是向量,长度必须相等,图是Y对X的

           若X,Y是矩阵,大小必须相等,图是列Y对与列X的

           若X或Y一个是向量,一个是矩阵,矩阵必须具有一定的尺寸,使得其尺寸之一等于向量的长度。如果矩阵行的数量等于向量长度,则该plot函数将绘制每个矩阵列与向量的关系。如果矩阵列的数量等于矢量长度,则该函数将绘制每个矩阵行与矢量的关系。如果矩阵是正方形,则该函数将绘制每列相对于向量的图。

           若X或是Y是标量,另一个是标量或向量,图像是离散点,符号一定是plot(X,Y,'o')。

(2)plot(X,Y,LineSpec)::多了一个LineSpec,这个的目的在于设置线性,标记,颜色

(3)plot(X1,Y1,LineSpec1,...,Xn,Yn,LineSpecn) 设置每条线的线型,标记类型和颜色

(4)plot(Y)创建数据的二维折线图Y与每个值的索引

若Y是向量,则x轴刻度范围为1到Y的长度那么大

若Y是矩阵,图像是列Y和行号的关系,X轴从1到Y的行数

若Y是复数,图像是虚部Y对实部Y的图像,plot(real(Y),imag(Y))

(5)plot(Y,LineSpec)对(4)设置线性,颜色,标记类型

附:LineSpec属性表

线性描述
-实线(默认)
--虚线
虚线
-.点划线

 

 

 

图像点的形状描述
o

+加号
*星号
.
x十字
s正方形
d菱形
^向上三角形
v向下三角形
>向右三角形
<左三角形
p五角星
h六角形
颜色描述
y黄色
m品红
c青色
r红色
g绿色
b蓝色
w白色
k黑色

二.应用情况

(1)绘制多条线

x=linespace(-2*pi,2*pi);   % linespace(x1.x2,n)是均分计算指令,生成x1到x2之间n个行线型矢量% 默认n是100
y1=sin(x);
y2=cos(x);
plot(x,y1,x,y2)

(2)矩阵做图

y=magic(4)   %magic:生成行列和对角线元素和相等的矩阵,第二章的文章中总结过
plot(y)

(3)指定线型,​​颜色和标记

x = 0:pi/10:2*pi;
y1 = sin(x);
y2 = sin(x-0.25);
y3 = sin(x-0.5);
plot(x,y1,'g',x,y2,'b--o',x,y3,'c*')

(4)在特定点标记

MarkerIndices后设置,每五个数据点用特定点表示,长度是函数y的长度

x = linspace(0,10);
y = sin(x);
plot(x,y,'-o','MarkerIndices',1:5:length(y))

(5)显示轴,标题

x = linspace(0,10,140);
y = cos(3*x);
plot(x,y,'Color',[0,0.7,0.9])title('曲线图') %标题
xlabel('x')  %显示x轴是x
ylabel('cos(3x)')  %显示y轴

了解上述知识,即可以独立完成一些作图,没有很复杂的东西,唯一困难的是在不同算法中结合数学公式和数据集完成图像的分析,本人尚才疏学浅,如内容中有任何错误的地方,望告知,我会加以修改,之后会继续更新。

这篇关于关于plot函数的一切(史上最全总结)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/954804

相关文章

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

hdu1171(母函数或多重背包)

题意:把物品分成两份,使得价值最接近 可以用背包,或者是母函数来解,母函数(1 + x^v+x^2v+.....+x^num*v)(1 + x^v+x^2v+.....+x^num*v)(1 + x^v+x^2v+.....+x^num*v) 其中指数为价值,每一项的数目为(该物品数+1)个 代码如下: #include<iostream>#include<algorithm>

git使用的说明总结

Git使用说明 下载安装(下载地址) macOS: Git - Downloading macOS Windows: Git - Downloading Windows Linux/Unix: Git (git-scm.com) 创建新仓库 本地创建新仓库:创建新文件夹,进入文件夹目录,执行指令 git init ,用以创建新的git 克隆仓库 执行指令用以创建一个本地仓库的

二分最大匹配总结

HDU 2444  黑白染色 ,二分图判定 const int maxn = 208 ;vector<int> g[maxn] ;int n ;bool vis[maxn] ;int match[maxn] ;;int color[maxn] ;int setcolor(int u , int c){color[u] = c ;for(vector<int>::iter

整数Hash散列总结

方法:    step1  :线性探测  step2 散列   当 h(k)位置已经存储有元素的时候,依次探查(h(k)+i) mod S, i=1,2,3…,直到找到空的存储单元为止。其中,S为 数组长度。 HDU 1496   a*x1^2+b*x2^2+c*x3^2+d*x4^2=0 。 x在 [-100,100] 解的个数  const int MaxN = 3000

状态dp总结

zoj 3631  N 个数中选若干数和(只能选一次)<=M 的最大值 const int Max_N = 38 ;int a[1<<16] , b[1<<16] , x[Max_N] , e[Max_N] ;void GetNum(int g[] , int n , int s[] , int &m){ int i , j , t ;m = 0 ;for(i = 0 ;

C++操作符重载实例(独立函数)

C++操作符重载实例,我们把坐标值CVector的加法进行重载,计算c3=c1+c2时,也就是计算x3=x1+x2,y3=y1+y2,今天我们以独立函数的方式重载操作符+(加号),以下是C++代码: c1802.cpp源代码: D:\YcjWork\CppTour>vim c1802.cpp #include <iostream>using namespace std;/*** 以独立函数

函数式编程思想

我们经常会用到各种各样的编程思想,例如面向过程、面向对象。不过笔者在该博客简单介绍一下函数式编程思想. 如果对函数式编程思想进行概括,就是f(x) = na(x) , y=uf(x)…至于其他的编程思想,可能是y=a(x)+b(x)+c(x)…,也有可能是y=f(x)=f(x)/a + f(x)/b+f(x)/c… 面向过程的指令式编程 面向过程,简单理解就是y=a(x)+b(x)+c(x)

go基础知识归纳总结

无缓冲的 channel 和有缓冲的 channel 的区别? 在 Go 语言中,channel 是用来在 goroutines 之间传递数据的主要机制。它们有两种类型:无缓冲的 channel 和有缓冲的 channel。 无缓冲的 channel 行为:无缓冲的 channel 是一种同步的通信方式,发送和接收必须同时发生。如果一个 goroutine 试图通过无缓冲 channel