0

我有一个带有圆柱坐标的 .txt 文件theta,,x(在 matlab 中将是 rho)和z,全部都是数字。我正在尝试将它们转换为笛卡尔坐标,然后绘制它们(网格或冲浪)。我导入了 txt 文件,现在我有 3 个变量theta,x,z.,我使用了该命令[x,y,z] = pol2cart (theta, x, z),但结果只有一列。

我哪里错了?

数据位于由空格分隔的列中:

10.2837 -99.975 36.8826
10.2837 -99.963 36.8826
10.2837 -99.95  36.8826
10.2837 -99.938 36.8826
4

1 回答 1

2

当您指定三个输出变量时,如何获得“仅一列”输出。您收到错误消息吗?

您是否设法将数据放入矩阵中?(作为 Matlab 变量,而不是带空格的文本文件?)如果是这样,请尝试:

data_mat = [10.2837 -99.975 36.8826
            10.2837 -99.963 36.8826
            10.2837 -99.95  36.8826
            10.2837 -99.938 36.8826];

%% Assuming this order is correct:
theta = data_mat(:,1);
rho = data_mat(:,2);
zz = data_mat(:,3);

[x, y, z] = pol2cart(theta, rho, zz);

另外,请记住将角度转换为弧度。

于 2013-09-24T11:06:24.047 回答