第一范文网 - 专业文章范例文档资料分享平台

MbookMATLAB4计算的可视化和GUI设计

来源:用户分享 时间:2025/5/16 9:36:27 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

说明:参数n应为正整数,是通过鼠标从图上获得数据点的个数;x、y用来存放所取点的坐标。

2. gtext命令

gtext命令是把字符串放置到图形中鼠标所指定的位置上。 语法:

gtext(‘s’) %用鼠标把字符串放置到图形上

说明:如果参数s是单个字符串或单行字符串矩阵,那么一次鼠标操作就可把全部字符以单行形式放置在图上;如果参数s是多行字符串矩阵,那么每操作一次鼠标,只能放置一行字符串,需要通过多次鼠标操作,把一行一行字符串放在图形的不同位置。

【例4.12】在y=sin(x)的图形中将(π,0)和(2π,0)点的坐标取出,并在(2π,0)点写“2π”字符串。

x=0:0.1:2*pi; plot(x,sin(x))

[m,n]=ginput(2) %取两点坐标 m =

3.1532 6.2984 n =

-0.0029 -0.0088

gtext('2\\pi') %写2π

程序分析:由于鼠标所取点的位置有些偏差,因此ginput命令获取的坐标并不是精确在(π,0)和(2π,0)点上;gtext命令在图中鼠标单击处写了“2π”字符串。

4.2 MATLAB的三维图形绘制

4.2.1绘制三维线图命令plot3

plot3是用来绘制三维曲线的,它的使用格式与二维绘图的plot命令很相似。 语法:

plot3(x,y,z, 's') %绘制三维曲线 plot3(x1,y1,z1, 's1',x2,y2,z2, 's2',…) %绘制多条三维曲线

说明:当x、y、z是同维向量时,则绘制以x、y、z元素为坐标的三维曲线;当x、y、z是同维矩阵时,则绘制三维曲线的条数等于矩阵的列数。s是指定线型、色彩、数据点形的字符串。

【例4.13】三维曲线绘图,如图4.12所示。

x=0:0.1:20*pi;

plot3(x,sin(x),cos(x))

%按系统默认设置绘图

图4.12 三维曲线

4.2.2绘制三维网线图和曲面图

1. meshgrid命令

为了绘制三维立体图形,MATLAB的方法是将x方向划分为m份,将y方向划分为n份,meshgrid命令是以x、y向量为基准,来产生在x-y平面的各栅格点坐标值的矩阵。

语法:

[X,Y]=meshgrid(x,y)

说明:X、Y是栅格点的坐标,为矩阵;x、y为向量。 例如,将x(1×m)向量和y(1×n)向量转换为(n×m)的矩阵:

x=[1 2 3 4]; y=[5 6 7];

[xx,yy]=meshgrid(x,y)

xx =

1 2 3 4 1 2 3 4 1 2 3 4 yy =

5 5 5 5 6 6 6 6 7 7 7 7

【例4.14】使用peaks函数来测试meshgrid命令,并使用mesh命令来查看meshgrid的输出。

MATLAB提供了peaks函数,在下面的图4.13中可以看到。其x和y坐标分别为在[-3 3]范围内的49×49的矩阵,z坐标与x、y的关系为:

z = 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2) ... - 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2) ...

- 1/3*exp(-(x+1).^2 - y.^2)

x=linspace(-3,3,49); y=linspace(-3,3,49);

[xx,yy]=meshgrid(x,y) ; %产生49*49的栅格点坐标 mesh(xx) %查看xx的网线图 mesh(yy)

xx和yy分别为49×49的矩阵,如图4.13为xx和yy的网状图。

图4.13 (a) xx的网格图 (b) yy的网格图

zz=3*(1-xx).^2.*exp(-(xx.^2) - (yy+1).^2) ...

- 10*(xx/5 - xx.^3 - yy.^5).*exp(-xx.^2-yy.^2) ... - 1/3*exp(-(xx+1).^2 - yy.^2); %产生peaks函数 plot3(xx,yy,zz)

图4.14 peaks函数的三维线图

2. 三维网线图 语法:

mesh(z) mesh(x,y,z,c)

%画三维网线图

说明:当只有参数z时,以z矩阵的行下标作为x坐标轴,把z的列下标当作y坐标轴;x、y分别为x、y坐标轴的自变量;当有x、y、z参数时,c是指定各点的用色矩阵,当c省略时默认用色矩阵是z的数据。如果x、y、z、c四个参数都有,则应该都是维数相同的矩阵。

【例4.14续】用mesh查看peaks函数的三维网线图,如图4.15所示。

mesh(xx,yy,zz)

图4.15 peaks函数的三维网线图 3. 三维曲面图 语法:

surf (z) %画三维曲面图 surf (x,y, z,c)

说明:参数设置与mesh命令相同,c也可以省略。

【例4.14续】用surf查看peaks函数的三维曲面图,如图4.16所示。

surf (xx,yy,zz)

图4.16 peaks函数的三维曲面图

4. 其它立体网线图和曲面图

搜索更多关于: MbookMATLAB4计算的可视化和GUI设计 的文档
MbookMATLAB4计算的可视化和GUI设计.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c2u1vh4ivl11jxus0i34k_4.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top