我想在没有Meshgrid的matlab中制作一个网格(Uniform Mapping)。
我用meshgrid制作网格,但现在我只想用循环或任何第二种方法(没有网格)来制作它
这是我使用meshgrid的代码:
figure(6)
[X,Y] = meshgrid(-1:0.1:1, -1:0.1:1)
plot(X,Y,'k-')
hold on
plot(Y,X,'k-');
答案 0 :(得分:1)
使用repmat
,或乘以ones
向量,以获得更多基本功能:
x = -1:0.1:1;
y = -1:0.1:1;
% with repmat
X1 = repmat(x(:)',[numel(y),1]);
Y1 = repmat(y(:),[1,numel(x)]);
% multiply with ones
X2 = ones(numel(y),1)*x(:)';
Y2 = y(:)*ones(1,numel(x));
% meshgrid
[X3,Y3] = meshgrid(x, y);
isequal(X1,X2,X3) && isequal(Y1,Y2,Y3) % true
plot(X1,Y1,'k');
hold on
plot(Y1,X1,'k');