2

MATLAB で地球上に 3D サーフェス プロットを配置したいと考えています。私はそれを働かせることができません。

コードは次のとおりです。

% Sampele Data
longitude = [1 2 3]
latitude = [3 2 1]
elevation = [12 21 13; 15 14 15; 12 16 15]

% Create Globe
figure
axesm('globe')
gridm('GLineStyle','-','Gcolor',[.8 .7 .6],'Galtitude', .02)
load coast
plot3m(lat,long,'k')
view(3)
axis off; zoom(2)

% Overlay Surface Plot
mesh(longitude,latitude,elevation)
surfm(longitude,latitude,elevation)
4

1 に答える 1

1

明らかではありませんが、コードは実際には正常に動作しているようです。

それを表示するには、最初に線を削除しますmesh(longitude,latitude,elevation)。これは、経度-緯度座標でプロットされないためです。

現在の問題は、 がsurfm(longitude,latitude,elevation)見つけにくい小さな領域しか描画しないことです。見つけすぎて、行をコメントアウトしplot3m(lat,long,'k')、スクリプトを実行して、地球の右半分にある小さなサーフェスに注目してください。

スクリプトが機能していることを示すために、最後の行を次のように置き換えることもできます。

surfm(lat(1:200),long(1:200), rand(200,200))

南極の一部をランダムに色付けします。

ところで、あなたの最後の行は読むべきではありませんsurfm(latitude,longitude,elevation)か?

于 2012-08-29T16:42:43.960 に答える