-1

以下是我正在编写的代码的一部分,

for ii=1:length(k31)

B   = [k31(ii);k32(ii)];

X=abs( pinv(A)*B);

g1(ii)=X(1,:);

g2(ii)=X(2,:);

g3(ii)=X(3,:);

end

scatter(x(1:end-1), y(1:end-1), 5, g1);

但是我无法绘制数据,错误如下

??? Error using ==> scatter at 79

C must be a single color, a vector the same length as X, or an M-by-3 matrix.

x 和 y 与 k31 具有相同的尺寸......但它仍然显示这样的错误

4

1 回答 1

1

您正在喂食scatter4 个参数:scatter(X, Y, S, C). 您的错误指出:

C必须是单色、长度与 相同的向量X或 M×3 矩阵。

这意味着第四个参数g1与第一个参数的维度不同。

这里可能发生的是您没有g1在循环之前重新初始化,因此它保留了以前的大小。将以下行放在for-loop 之前:

g1 = zeros(size(k31));

它应该可以工作。

于 2012-11-08T15:23:13.270 回答