Error using quiver The size of Y must match the size of U or the number of rows of U.
9 次查看(过去 30 天)
显示 更早的评论
Alvaro Mª Zumalacarregui Delgado
2021-2-21
评论: Alvaro Mª Zumalacarregui Delgado
2021-2-21
i am trying to create a vector field with app designer with the function quiver but i have an error 'Error using quiver
The size of Y must match the size of U or the number of rows of U.'
a = app.a.Value;
b = app.b.Value;
x1=0;
x2=2;
y1=0;
y2=2;
N = 20;
x = linspace(x1,x2,N);
y = linspace(y1,y2,N);
[X,Y]= meshgrid(x,y);
m = a.*y/b.*x;
S = atan (m);
U = cos (S);
V = sin (S);
quiver (app.Axes, X,Y,U,V);
0 个评论
采纳的回答
KALYAN ACHARJYA
2021-2-21
编辑:KALYAN ACHARJYA
2021-2-21
Refer the MATLAB Docs, where U and V must be 2D as same sizes of X and Y. Please add the following line, this may allow to avoid the error
[U,V]=meshgrid(U,V);
2 个评论
KALYAN ACHARJYA
2021-2-21
编辑:KALYAN ACHARJYA
2021-2-21
I have tried with non App case (Assigning the value a and b directly)
a = 2;
b= 3;
x1=0;
x2=2;
y1=0;
y2=2;
N = 20;
x = linspace(x1,x2,N);
y = linspace(y1,y2,N);
[X,Y]= meshgrid(x,y);
m = a.*y/b.*x;
S = atan (m);
U = cos (S);
V = sin (S);
[U,V]=meshgrid(U,V);
quiver (X,Y,U,V);
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/526354/image.png)
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Vector Fields 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!