GNU Octave 日本周辺を描画
やること
以前の記事では、ETOPO1を使って世界地図を描画しました。今回は、日本周辺の地図を描画します。
描画
コードです。内容は、ETOPO1から日本域だけの標高データを抽出して、標高0mの等高線を描いています。
# netcdf を取り扱うパッケージを読み込み
pkg load netcdf
# ETOPO1読み込み
topo_file = "ETOPO1_Bed_g_gmt4.grd";
x = ncread(topo_file,"x");
y = ncread(topo_file,"y");
z = ncread(topo_file,"z");
z=flipud(rot90(z));
# ETOPO1から日本域 120E-150E, 20N-50N を抽出
lon_lim=[120 150];
lat_lim=[20 50];
topo=z(lat_lim(1)<=y & y<=lat_lim(2),lon_lim(1)<=x & x<=lon_lim(2));
lon=x(lon_lim(1)<=x & x<=lon_lim(2));
lat=y(lat_lim(1)<=y & y<=lat_lim(2));
# 描画 (標高0mの等高線)
contour(lon,lat,topo,[0 0]);
daspect([1 1]);
grid on;
# 再利用するのであれば、日本域のデータを保存
save("etopo_japan.mat","lon","lat","topo");
描画結果
お疲れさまでした。