2010wly 发表于 2010-3-31 15:46

求助quiver出流速矢量图

hold on
quiver(x,y,u,v);
hold off

在盐度等值线图上添加流速矢量,只u方向有值,v为全为0
x,y,u,v 都为10*6的矩阵
盐度等值线图正确,说明x,y矩阵没有问题
但是流速矢量就是不行

举例,u矩阵的值如下
u =
   -0.3366   -0.6811   -0.4313   -0.2871    0.0152   -0.4554
   -0.3400   -0.6880   -0.4357   -0.2900    0.0154   -0.4600
   -0.6028   -0.7200   -0.5419   -0.4700   -0.0172   -0.4600
   -0.6400   -0.7933   -0.6890   -0.6117   -0.3115   -0.4989
   -0.4911   -0.6666   -0.6962   -0.6113   -0.4368   -0.5035
   -0.3744   -0.4810   -0.6155   -0.4985   -0.7200   -0.5819
   -0.2878   -0.2856   -0.4447   -0.4858   -0.8600   -0.5744
   -0.2311   -0.2730   -0.2839   -0.2925   -0.6272   -0.4679
   -0.1911   -0.2343   -0.1600   -0.1477   -0.4036   -0.4156
   -0.1930   -0.2366   -0.1616   -0.1492   -0.4076   -0.4197
v =
   0   0   0   0   0   0
   0   0   0   0   0   0
   0   0   0   0   0   0
   0   0   0   0   0   0
   0   0   0   0   0   0
   0   0   0   0   0   0
   0   0   0   0   0   0
   0   0   0   0   0   0
   0   0   0   0   0   0
   0   0   0   0   0   0

2010wly 发表于 2010-3-31 16:20

照道理,没有盐度的地方也应该没有流速的
反正就是没有办法画出正确的矢量

[ 本帖最后由 ChaChing 于 2010-4-1 00:11 编辑 ]

curb 发表于 2010-3-31 19:43

x y经过meshgrid了么?
x y 与u v是大小相同的矩阵

2010wly 发表于 2010-3-31 23:14

回复 板凳 curb 的帖子

是相同的矩阵

可能问题出在矢量箭头过大,就是—>,箭头>太大了,可有高手知道如何对箭头进行设定嘛,如何表述呢?quiver(x,y, u,v, '....')

ChaChing 发表于 2010-4-1 00:15

quiver(...,scale) ?

2010wly 发表于 2010-4-1 08:41

回复 5楼 ChaChing 的帖子

我试过 scale为 0 ,还好出了一小点横线,为0.5,1,2 ,2.5 就是上图看到的效果

所以说 scale 无法 显示正确的图

ChaChing 发表于 2010-4-1 09:17

水平有限, 没给齐数据/代码/图, 很难清楚LZ说的:@)
可以想法简化给齐些吗?:handshake

curb 发表于 2010-4-1 09:49

load u.dat
v=zeros(size(u));
x=1:6; % 站位,不清楚你的数据,随便写的
y=1:2:20; %水深度
=meshgrid(x,y);
h=quiver(x1,y1,u,v,0.2);
axis ij
set(h,'ShowArrowHead', 'off') %取消箭头
set(gca,'xgrid','on')我之前做过类似的水平流场,当时的问题是流速变化过大,
你的似乎也有这个问题,第5个站位,比其他的小一个量级
这样箭头很难做出来,我最后把箭头取消了

看你的图,感觉xy坐标设置有问题
你先单独画流场试试,不要跟盐度叠加

另外,根据你的数据,不可能出现没有盐度的地方没有流速这种情况
每一层都有流速,除非你的流场数据在深度上并非等深坐标,而是相对坐标
那样就要换算到正常坐标,在无盐度位置无流场值才可以

[ 本帖最后由 curb 于 2010-4-1 10:01 编辑 ]

2010wly 发表于 2010-4-2 08:34

回复 8楼 curb 的帖子

多谢curb!

“看你的图,感觉xy坐标设置有问题” 对的
把x/100(缩小100倍)能画出矢量图了
原来的x的范围(0 40000),y的范围(-20 2)
出图的问题是解决了

但如何解释这个现象呢
出矢量的比例跟x,y的值有关,xy比例失调后,导致矢量成图有问题?

curb 发表于 2010-4-2 09:02

x 范围我设1:6,quiver的scale就设了0.2
如果是0:40000的话,quiverd scale设大一点试试
页: [1]
查看完整版本: 求助quiver出流速矢量图