matlab中meshgrid 函数的用法.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
matlab中meshgrid 函数的用法

?matlab中 meshgrid 函数的用法 分类:?MATLAB学习2014-06-20 21:56?1351人阅读?评论(0)?收藏?举报目录(?)[+] meshgrid是MATLAB中用于生成网格采样点的函数。在使用MATLAB进行3-D图形绘制方面有着广泛的应用。 生成绘制3-D图形所需的网格数据。在计算机中进行绘图操作时, 往往需要一些采样点,然后根据这些采样点来绘制出整个图形。在进行3-D绘图操作时,涉及到x、y、z三组数据,而x、y这两组数据可以看做是在Oxy平面内对坐标进行采样得到的坐标对(x, y)。例如, 要在“3=x=5,6=y=9,z不限制区间” 这个区域内绘制一个3-D图形,如果只需要整数坐标为采样点的话。我们可能需要下面这样一个坐标构成的矩阵: (3,9),(4,9),(5,9); (3,8),(4,8),(5,8); (3,7),(4,7),(5,7); (3,6),(4,6),(5,6); ? //?这些都是XOY平面的坐标点 在matlab中我们可以这样描述这个坐标矩阵: 把各个点的x坐标独立出来,得: 3,4,5; 3,4,5; 3,4,5; 3,4,5; 可以把这个矩阵设为X~~ 再把各个点的y坐标也独立出来: 9,9,9; 8,8,8; 7,7,7; 6,6,6; 可以把这个矩阵设为Y~~ 这样对应的x、y结合,便表示了上面的坐标矩阵。meshgrid就是产生这样两个矩阵,来简化我们的操作。然后根据(x, y)计算获得z,并绘制出三维图形。 [X,Y] =?meshgrid(x,y) ? ?//?这个语句是用的最多的语句上面的描述,我们可以知道,meshgrid返回的两个矩阵X、Y必定是行数、列数相等的(即X、Y两个矩阵都有相同的行数,和相同的列数) 且X、Y的行数都等于输入参数y中元素的总个数,X、Y的列数都等于输入参数x中元素总个数(这个结论可以通过查看meshgrid的源代码得到,可以通过示例程序得到验证)。(我们自己也可以体会到) [X,Y]=meshgrid(x)与[X,Y]=meshgrid(x,x)是等同的 [X,Y,Z]=meshgrid(x,y,z)生成三维数组,可用来计算三变量的函数和绘制三维立体图 相关函数: plot3、mesh、surf、automesh、ndgrid plot3(x1,y1,z1,x2,y2,z2,…,xn,yn,zn):例:t=0:0.1:1;x=sin(t);y=cos(t);z=t;plot3(x,y,z) 可绘n条线;plot函数也可化多条线 surf(x,y,z)或mesh(x,y,z):绘制三维曲面的网格图或表面图, surfc()和surfl()分别绘制带有等高线和光照下的三维曲面, meshc()和meshz()也有不同效果 contour(peaks); 当然你也可以定义等高线的条数,如contour(peaks,8)表示8条等值线;可以定义等高线的值v=[0 2 3 4]; contour(peaks,v)表示画值为0 2 3 4的等值线;可以标记等值线,[c,h] = contour(peaks); clabel(c,h); 等等,help contour里面很全面的~ 我们自己也可以测试一下: 在MATLAB命令行中,输入一下内容~ x = rand(3, 4); ? ? ? ?y = rand(2, 3); ? ? ? [X, Y] = meshgrid(x, y) 回车后,会产生如下数据: x = ? ? 0.4039 ? ?0.9421 ? ?0.0598 ? ?0.8212 ? ? 0.0965 ? ?0.9561 ? ?0.2348 ? ?0.0154 ? ? 0.1320 ? ?0.5752 ? ?0.3532 ? ?0.0430 列数 y = ? ? 0.1690 ? ?0.7317 ? ?0.4509 ? ? 0.6491 ? ?0.6477 ? ?0.5470 即行数 X= ? ? 0.4039 ? ?0.0965 ? ?0.1320 ? ?0.9421 ? ?0.9561 ? ?0.5752 ? ?0.0598 ? ?0.2348 ? ?0.3532 ? ?0.8212 ? ?0.0154 ? ?0.0430 ? ? 0.4039 ? ?0.0965 ? ?0.1320 ? ?0.9421 ? ?0.9561 ? ?0.5752 ? ?0.0598 ? ?0.2348 ? ?0.3532 ? ?0.8212 ? ?0.0154 ? ?0.0430 ? ? 0.4039 ? ?0.0965 ? ?0.1320 ? ?0.9421 ? ?0.9561 ? ?0.5752 ? ?

文档评论(0)

ikangdwe + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档