[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dennou-ruby:003549] Re: 全球データで東西方向の境界をまたいだ絵を描きたい



中野様

大塚です。

データを切り出してしまわずに、描画範囲を指定すれば、
地図投影を用いている時には、自動的につないでくれるように思います。

itr = 1 だと、うまい方法が無いかもしれません。

(2012/04/18 16:45), Masuo Nakano wrote:
> 中野@JAMSTECです。
> 
> 全球データを使ってGPhysでお絵かきをしています。
> 
> データが-180<=lon<180で存在する場合
> GGraph.tone(gp.cut("lon"=>100..200))として図を書くと
> 100<=lon<180
> の範囲の図がかかれます。
> 
> GPhyオブジェクトを作り直すことなく
> x方向にはcyclicだと思わせて100<=lon<200で簡単に図を書かせる方法がありましたら
> 教えていただけないでしょうか?
> 
> よろしくお願いいたします。
> 


-- 
京都大学大学院理学研究科
気象学研究室
大塚成徳 (Shigenori OTSUKA)
email: otsuka@xxxxxxxxxxxxxxxxxx
tel: 075-753-3935
require "numru/ggraph"
include NumRu

na = NArray.sfloat(360, 181).random!
va = VArray.new(na, {}, "dummy")
lon = NArray.sfloat(360).indgen!(-180, 1)
lat = NArray.sfloat(181).indgen!(-90, 1)
lon_va = VArray.new(lon, {"units" => "degrees_east"}, "lon")
lat_va = VArray.new(lat, {"units" => "degrees_north"}, "lat")
lon_ax = Axis.new.set_pos(lon_va)
lat_ax = Axis.new.set_pos(lat_va)
p gp = GPhys.new(Grid.new(lon_ax, lat_ax), va)

DCL::gropn(4)
DCL::sglset("lcntl", false)
GGraph.set_fig("itr" => 10, "window" => [100, 200, nil, nil])
GGraph.tone(gp, true, "map_axes" => true)
DCL::grcls

Attachment: dcl_001.png
Description: PNG image