首先,将您的2D坐标/值矩阵导入Matlab,可能使用dlmread。
M = dlmread(filename, '/');
如Shai所述,您需要将坐标转换为1偏移而不是0偏移:
M(:,1:3) = M(:,1:3) + 1;
接下来,创建一个适当大小的矩阵,将值插入。
foo = zeros(max(M(:,1)), max(M(:,2)), max(M(:,3)));
最后,使用sub2ind将您的坐标转换为indeces,然后插入值。
idx = sub2ind(size(foo), M(:,1), M(:,2), M(:,3));
foo(idx) = M(:,4);