大型的xyz文件转换成网格
128(30天)
显示旧的评论
我有一个大型的XYZ文件(300276 x3,这个文件包含x和y坐标(不是纬度/经度,但是极地球面)和海拔z),我想知道能否将其转换成一个网格数据集(n x m矩阵)。某某文件可以从下载:
在matlab和进口:
AIS_SEC = importdata (“AIS_SEC.xyz”);
我试着:
X = XYZ (: 1);
Y = XYZ (:, 2);
Z = XYZ (:, 3);
xr =排序(独特的(X));
年=排序(独特(Y));
gRho = 0(长度(年),(xr));
gRho = griddata (X, Y, Z, xr,年”)
显示亮度图像(gRho)
要求300276 x300276 (671.8 gb)数组超过最大数组大小的偏好。创建数组
更大的比这个限制可能需要很长时间,导致MATLAB变得反应迟钝。看到数组大小
限制或首选项面板的更多信息。
我试着:
%得到坐标向量
x =独特(XYZ (: 1));
y =独特(XYZ (:, 2));
%的尺寸数据
nx =长度(x);
纽约=长度(y);
%的框架矩阵网格
D =重塑(XYZ(:, 3),[纽约,nx]);
%翻转矩阵调整为阴谋
H = flipud (H);
%的转置矩阵
H = H ';%检查是必需的
冲浪(x, y, H);
错误使用重塑
来改变元素的数量不能改变。
我现在可以画出用scatter3 nx3文件(见图片)
scatter3 (XYZ (: 1), XYZ (:, 2), XYZ (:, 3), 2, XYZ (:, 3));
colorbar
但我想要做的显示亮度图像。因此,我想nx3文件转换成一个nxm矩阵(光栅/网格格式)和en额外的我想它用于QGIS geotiff文件。
谢谢!