matlab基础知识,绘制函数图像

matlab基础知识,绘制函数图像,第1张

这是因为,plot函数绘制的曲线,x和y必须是矩阵

第一个例子,x是矩阵,但是你得到y用的并不是矩阵 *** 作,如果想得到矩阵必须用点平方,即:

x=0:1:10y=x.^2+1plot(x,y)

如果不加这个点认为是矩阵x乘矩阵x,而不是对应元素相乘。

第二个函数之所以不出错,是因为matlab中类似sin这些函数带入矩阵时,是对矩阵元素 *** 作的。得到的y为矩阵所以能绘制图形。

下面是我自己总结的一些常用绘图函数,只给出原型和功能,详细的可以用的时候再查。

---------------------Plot二维数据图形函数---------------------------

1.plot(x1,y1,x2,y2…),其中x1,y1,x1,y2为行向量。

2.plot(A),其中A为nxm矩阵,绘制以行为横坐标,对应列元素的曲线。共m条曲线。

3.plot(w,q),其中w,q均为nxm矩阵,w的每一列作为q每一列的自变量。共m条曲线。

与plot对应的函数有

1)plot双轴线性刻度。2)loglog双轴对数刻度

3)semilogxx对数,y线性4)semilogyx线性,y对数

5)ploy双y轴适合两组数据相差较大的绘图。

其他参数

plot(x,y,’R--square’)红色,虚线,数据点用方块表示。

线型:-实线--虚线:点线-.点画线

标志:<左三角>右三角*星号+加号.小黑点o小圆圈v下三角

使用legend函数还可以添加图例。

------------------------------plot3三维函数绘图----------------------

plot3(x,y,z)绘制三维数据图,xyz也可同时为二维矩阵,可画多条图形(按列 *** 作)。

----------------------------ezplot二维符号函数绘制---------------------

1.ezplot(f,[x1,x2]),其中f含单变量的符号函数。x1,x2自变量的取值范围,默认[-2pi,2pi]

2.explot(‘u(x,y)’,[x1,x2],[y1,y2]),其中隐函数u(x,y)=0

3.explot(x,y,[t1,t2]),其中x=f(t),y=g(t)是参数方程。

--------------------ezplot3三维符号函数绘制-------------------

ezplot3(x,y,z,[t1,t2]),其中x=f(t),y=g(t),z=h(t)为参数方程。

Ezplozar(r,[x1,x2]),其中r是幅值,x1,x2为极角的取值范围。

/********************************************************************************************************/

/*以上四个是matlab数据可视化中最常用的4个函数。下面是一些特殊图形绘制的函数*/

/********************************************************************************************************/

---------------------------------subplot平面分图位置函数---------------------------------

subplot(nmj),其中n:行m:列j:编号。

---------------------------------mesh三维网状图---------------------------------

(1)一般meshezmesh(符号函数)

(2)带等高线meshcezmeshc(符号函数)

(3)加围裙meshz

Mesh(X)和mesh(x,y,z),前者是以x,y平面上找一点,函数值为(x,y).后者和plot3

函数用法一样。

---------------------------------Surf三维曲面图---------------------------------

(1)一般surfzsurf(符号函数)

(2)带等高线surcezsurc(符号函数)

(3)加光源surfl

Surf(x,y,z,z(x,y))最后一个参数为颜色信息矩阵,默认为z

--------------------------------Contour等高线--------------------------------

(1)平面上的等高线contourezcontour(符号函数)

(2)空间上的等高线contour3

--------------------------------Bar、barh条图函数--------------------------------

Bar 描述[n,m]矩阵数据,二维垂直条图

Bar3 描述[n,m]矩阵数据,三维垂直条图

Barh描述[n,m]矩阵数据,二维水平条图

Barh3 描述[n,m]矩阵数据,三维水平条图

--------------------------------Area面积图函数--------------------------------

用面积的方法描述向量或矩阵数据,向量或矩阵形成的曲线与x轴围成的面积。

注意:

1)Bar或area函数可以给出不同的参数,以实现不同的效果,如“stack”表示堆叠条图。

2)条形图上可叠其他图。

3)Area调用向量和矩阵的区别。矩阵:第二列绘图是在第一列的基础上增加。

向量:

加标注时,加上标技巧:ylabel(‘temperature(^{o}c)’)

--------------------------------Hist直方图函数--------------------------------

1)描述向量或矩阵x数据群按元素大小的分布规律。

2)调用方式hist(x)

--------------------------------Stem离散数据图--------------------------------

1)二维stem2)三维stem33)阶梯stairs

--------------------------------Errorbar误差图--------------------------------

--------------------------------Compass等矢量图--------------------------------

Compass罗盘图feather羽图quiver 2D矢量图

Quiver3 3D矢量图

--------------------------------Contur等值线--------------------------------

1)当z=f(x,y)中z为常数时,由x,y描述的函数。

2)conture 2D中绘出等值线contures3 3D中绘出等值线

Conturf 2D中绘出等值线并上色clabel等值线标注

/********************************************************************************************************/

我看到过一篇优秀硕士论文,是光学仿真

基于Matlab的光学实验仿真

不知道你有条件下到没,没条件的话可以留邮箱,我发给你

可以将线光源离散成多个离散的点光源的叠加,离散球面波的辐射

随便编了点,看看这个能不能符合你的要求:

clc

clear

lambda=586.3e-9

k=2*pi/lambda

phi=linspace(0,2*pi)

theta=linspace(0,pi,50)

[tt,pp]=meshgrid(theta,phi)

rf=10*lambda

[xx,yy,zz]=sph2cart(pp,pi/2.*ones(size(tt))-tt,rf.*ones(size(tt)))

xs=linspace(-10,10,200)

ys=0zs=0

E=zeros(size(tt))

for m=1:length(phi)

for n=1:length(theta)

for xn=1:length(xs)

r=sqrt((xx(m,n)-xs(xn))^2+(yy(m,n)-ys)^2+(zz(m,n)-zs)^2)

E(m,n)=E(m,n)+exp(1i*k*r)/r

end

end

end

surf(xx,yy,zz,E.*conj(E))

matlab生成的光场需要什么格式才能import到光源里面

用load,textread或者importdata文本(txt)格式的文件,只能识别数据,对其中的文本无法读取。

可以使用fscanf或者sscanf的方式读取,

思路为:定义cell矩阵,先全部以字符的方式读入,再将其中的数字转换为数据格式。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/7895107.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存