meshgrid方法

meshgrid方法目录meshgrid绘制曲面图三维网络meshgridmeshgrid和mesh方法的差别在于是否会画出栅格线绘制曲面图生成绘制3D图形所需的网格数据。因为在计算机中进行绘图操作时,往往需要一些采样点,然后根据这些采样点来绘制出整个图形。涉及到x、y这两组数据可以看做是在Oxy平面内对坐标进行采样得到的坐标对(x,y)。[X,Y]=meshgrid…

大家好,又见面了,我是你们的朋友全栈君。

meshgrid

meshgrid 和 mesh 方法的差别在于是否会画出栅格线

绘制曲面图

  • 生成绘制3D图形所需的网格数据。因为在计算机中进行绘图操作时,往往需要一些采样点,然后根据这些采样点来绘制出整个图形。

  • 涉及到x、y这两组数据可以看做是在 Oxy 平面内对坐标进行采样得到的坐标对(x, y)。

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

    • 解释:输出 X 的每一行的数值都是复制的x的值;输出 Y 的每一列的数值都是复制的y的值。
    • 所以,若x-1xm维, y-1xn维,则[X,Y]为 mxn 维
    • 也就是说,在 XOY 平面上,用m个x和n个y,通过不断做垂线,产生交点从而生成小的矩形网格的方法,生成网格图。
  • [X,Y]=meshgrid(x)[X,Y]=meshgrid(x,x) 是等同的

    % meshgrid--draw 2D figure.
    >> a=[1 2 3]; b= [2 3];
    >> [x y]=meshgrid(a,b)
    x =
         1     2     3
         1     2     3
    y =
         2     2     2
         3     3     3
    % shape(x)=shape(y)=2x3
    
    % Draw 3D figure
    [X,Y] = meshgrid(-2:.2:2, -2:.2:2);
    Z = Y .* exp(-X.^2 - Y.^2);
    mesh(X,Y,Z)
    
    • 结果图片:Meshgrid-1.jpgMeshgrid-1.jpg
  • 从 R2016b 开始,操作网格之前并不总是需要先创建网格,可以直接使用 surf 语句 surf(x, y, z)

三维网络

  • [X,Y,Z]=meshgrid(x,y,z) 生成三维数组

  • 在区间 [0,6] 内使用定义的 x、y 和 z 坐标创建三维网格坐标,并计算表达式 \(x^2+y^2+z^2\)

    x = 0:2:6;
    y = 0:1:6;
    z = 0:3:6;
    [X,Y,Z] = meshgrid(x,y,z);
    F = X.^2 + Y.^2 + Z.^2;
    
  • 确定网格的大小。三个坐标向量具有不同的长度,构成一个网格点矩形框。

    gridsize = size(F)
    
    % 结果
    gridsize = 1×3
    
     7     4     3
    
    • 输出的 gridsize 是 x-y-z 的三个维度。
    • 也就是说,X,Y,Z都是 7×4。每个都是3层,即X[:,:,1-3]
      • X 的每行都是0,2,4,6;
      • Y 的每列都是0-6;
      • Z 的所有元素都是0,3,6;
    • 可以理解成 z 层 x-y 平面。比如本题 3层7×4 平面。
  • 使用单输入语法,基于 x 中定义的坐标生成均匀分布的三维网格。新网格构成一个网格点正方体。

    [X,Y,Z] = meshgrid(x);
    G = X.^2 + Y.^2 + Z.^2;
    gridsize = size(G)
    
    % 结果
    gridsize = 1×3
    
     4     4     4
    
    • 此时只输入 x,因为 x 只有4个元素,则 X-Y-Z 皆是 4×4维矩阵,共有4层。X的每行都是0,2,4,6; Y的每列都是0,2,4,6; Z的所有元素都是0,2,4,6。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

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

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


相关推荐

  • 适配器的作用和原理

    适配器的作用和原理设计模式在android中的应用——适配器模式http://www.eoeandroid.com/thread-228482-1-1.html

    2022年5月2日
    37
  • 决策树原理详解_决策树的理解

    决策树原理详解_决策树的理解决策树是机器学习中一种基本的分类和回归算法,是依托于策略抉择而建立起来的树。其主要优点是模型具有可读性,分类速度快,易于理解。决策树的思想主要来源于Quinlan在1986年提出的ID3算法和1993年提出的C4.5算法,以及有Breiman等人在1984年提出的CART算法。1.什么是决策树决策树简单来说就是带有判决规则(if-then)的一种树,可以依据树中的判决规则来预测未知样本的类…

    2025年10月9日
    2
  • Logstash:Logstash 入门教程 (一)

    Logstash:Logstash 入门教程 (一)Logstash是一个功能强大的工具,可与各种部署集成。它提供了大量插件,可帮助你解析,丰富,转换和缓冲来自各种来源的数据。如果你的数据需要Beats中没有的其他处理,则需要将Logstash添加到部署中。Logstash是Elastic栈非常重要的一部分,但是它不仅仅为Elasticsearch所使用。它可以介绍广泛的各种数据源。Logstash可以帮利用它自己的Filter帮我们对……

    2025年8月19日
    3
  • gridview列的汇总

    gridview列的汇总

    2021年8月15日
    68
  • 一个15年ABAP老兵的建议:了解这些基础知识,对ABAP开发有百利而无一害

    一个15年ABAP老兵的建议:了解这些基础知识,对ABAP开发有百利而无一害SAPNetweaver 应用服务器是 SAPABAP 应用开发和运行平台 ABAP 开发人员在上面可以专注于具体业务逻辑的开发 凡涉及到更底层的基础设施相关任务 比如请求的负载均衡 进程的派生 同步和调度 内存管理 服务器多实例间缓存同步等等 统统交由 Netweaver 平台本身处理 如此一来 一个 ABAP 开发人员 即使不具备精深的计算机组成原理 操作系统 计算机网络等领域知识 也能胜任 SAP 应用的开发工作 本文详细介绍了 ABAP 服务器的各大组成部分和其职责所在 httpshttpsht

    2025年11月20日
    5
  • freemarker map遍历_freemarker使用流程

    freemarker map遍历_freemarker使用流程 freemarker中map遍历获取值后台数据: HashMap<String,String>map=newHashMap<>();map.put("adf","空间");map.put("xxx","空间2");map.put("jjj","空间3");model.addAttribute

    2022年9月21日
    5

发表回复

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

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