MATLAB - 矢量函数可视化

本文介绍了MATLAB中用于矢量函数可视化的几个关键函数:meshgrid用于生成网格采样点,quiver绘制二维矢量场,streamline则用于绘制流线。通过实例详细解析了每个函数的使用方法,包括不同参数设置对结果的影响,展示了如何利用这些函数绘制矢量函数的图形。
摘要由CSDN通过智能技术生成

1、meshgrid函数

在利用MATLAB进行3D图形绘制时,往往需要一些采样点,然后根据采样点进行图形绘制。meshgrid函数是用于生成网格采样点的函数,示例如下:

x=-3:1:3; 
y=-2:1:2;
[X,Y]=meshgrid(x,y)

运行结果:
运行结果
运行结果如图所示,这里meshgrid(x,y)的作用是分别产生以向量x为行,向量y为列的两个大小相同的矩阵。

2、quiver函数

quiver函数是MATLAB中使用箭头绘制二维矢量场的函数,使用该函数可以绘制矢量函数,基本格式为:quiver(x,y,u,v,scale) 该调用格式表示通过(x,y)指定的位置绘制小箭头来表示以该点为起点的向量(u,v),通过处处绘制箭头就得到了二维的矢量场,二维矩阵x,y,u,v具有一一对应的关系。scale表示箭头长度是否伸缩,等于0.5为缩短一半;等于2为长度扩大1倍;等于1则不做伸缩。示例如下

x = [0 0 0 0];
y = x;
u = [1 -1 0 0]; 
v = [0 0 1 -1];
quiver(x, y, u, v);

该程序是绘制4个矢量,起点均为(0,0),分别指向(1,0)、(-1,0)、(0,1)、(0,-1)。运行结果:
在这里插入图片描述
可以看到并未完全指到对应的点,需要加入scale参数,将其设为1后结果如下
在这里插入图片描述
另有一种调用格式quiver(u,v),作用是在xoy面上绘制向量(u,v),由于没有指定向量的起点,所以在平面上均匀的取若干个格点作为起点。

u = [1 1 1; 1 1 1];
v = u;
quiver(u, v);

结果如下:
在这里插入图片描述

3、streamline函数

streamline函数是从二维或三维矢量数据中绘制流线的函数,两种使用基本格式如下:

(1)、streamline(x,y,u,v,startx,starty)

基于二维向量数据u,v绘制流线,定义矢量u,v的位置坐标x,y必须是单调的,但不需要间隔均匀,且x和y有相同数量的元素,startx和starty定义流线的起始位置。

(2)、streamline(x,y,z,u,v,w,startx,starty,startz)

该函数基于三维数据u,v,w绘制流线,示例如下

[x,y] = meshgrid(0:0.1:1,0:0.1:1);
u = x;
v = -y;
figure
quiver(x,y,u,v)                  %绘制箭头图
startx = 0.1:0.1:1;
starty = ones(size(startx));         %定义起点坐标
streamline(x,y,u,v,s
  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值