在MATLAB中用quiver绘制极坐标表示的矢量场

在MATLAB中用quiver绘制极坐标表示的矢量场,matlab,Matlab,我想绘制以下以极坐标表示的向量场: E = r * R % (i am using big R to represent r^ hat). [x,y] = meshgrid(-5:1:5,-5:1:5); r = sqrt(x.^2 + y.^2); % r in function of (x, y) theta = atan2(y, x); % theta in function of (x, y) u = r.*cos(theta); % x component of the ve

我想绘制以下以极坐标表示的向量场:

E = r * R  % (i am using big R to represent r^ hat). 
[x,y] = meshgrid(-5:1:5,-5:1:5);

r = sqrt(x.^2 + y.^2); % r in function of (x, y)
theta = atan2(y, x); % theta in function of (x, y)

u = r.*cos(theta); % x component of the vector field
v = r.*sin(theta); % y component of the vector field

quiver(x, y, u, v)
该字段应类似于:


最困难的部分是将极坐标转换为欧几里德坐标:

E = r * R  % (i am using big R to represent r^ hat). 
[x,y] = meshgrid(-5:1:5,-5:1:5);

r = sqrt(x.^2 + y.^2); % r in function of (x, y)
theta = atan2(y, x); % theta in function of (x, y)

u = r.*cos(theta); % x component of the vector field
v = r.*sin(theta); % y component of the vector field

quiver(x, y, u, v)