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

[dennou-ruby:003652] Re: numru/ggraph_on_merdional_section.rb のパッチ



堀之内さま

お返事ありがとうございます。
ベクトル作画はいままであまり使う機会がなかったのですが、ここ最近増えてきて奮闘しているところです。
ベクトル作画は慣れないとなかなか手強いですね。これまで、基本的な仕組みをちゃんと把握していないままでも、なんとなく…で描けてしまっていたところを、浮き掘りにされている感じがします。

そもそも悩んでいたことは、ベクトル(x,y)にかかるファクターを個別に設定するにはどうしたらよいのか、というところでした。EP-fluxや、平均風速でもそうですが、鉛直方向の値のスケールは水平方向のものよりも(単位の取り方にも依りますが)1ケタ以上小さいので、鉛直流を目立たせたい場合には上記のような設定が必要になります。
しかし、GGraph::vectorを使って描くと、個別に指定できないので悩んでいたところ、ggraph_on_merdional_sectionのライブラリを見つけて飛びついたのでした。
# 結局、自分でvxfxratioなどを指定したかったので、
このライブラリを参考にしながら直にDCLExt.flow_vectを呼んでいます。どうやら自分が欲しかったのは、ベクトル作画のサンプルだったようです。

> 基本的な問題は,log-p 座標ベースのフラックスを,座標が p のままで
> 無理やり出そうというところからくることだろうと思いますが。
GGraph.vector_on_merdional_sectionのプログラムを見てみると、(lat,p)座標を(m,log-p)座標に変換していますね。その後は、DCLExt.flow_vectなどで作画しています。
自分で書いてやってみたのですが、(lat,p)座標のままでもウィンドウとvxfxratio, vxfyratioを適切に設定してやれば、望みの図は書けますね。

西本

2013/8/29 Takeshi Horinouchi <horinout@xxxxxxxxxxxxxxxxx>:
> 西本さん
>
> ご指摘ありがとうございます。しかし,vector_on_merdional_section
> なんて記憶にないなぁとおもったら,ずっと前に塚原さんが EP flux
> ベクトル表示用に作ってたんですね。確かに子午面でのベクトル描画は
> 気をつけないと変なことになりがちですね。ただ私自身はこれは使わず
> 普通に GGraph を使ってなんとかしてるので,そもそもの動作のまとも
> さや筋の良さについては(少なくとも今は)把握してません。ということ
> でこの際教えてほしいのですが,そのあたりどうですか。
> (ご指摘のバグ自体は明白ですね。)
>
> 基本的な問題は,log-p 座標ベースのフラックスを,座標が p のままで
> 無理やり出そうというところからくることだろうと思いますが。
>
>> みなさま
>>
>> GGraph::vector_on_merdional_section を使って緯度-高度面での
>> ベクトル図を描くときに、"xintv"や"yintv"を使ってデータを間引くところに
>> バグを見つけました。
>>
>> 訂正しましたので、パッチを送ります。
>>
>> 西本
>
> 堀之内 武
> 北海道大学 地球環境科学研究院 地球圏科学部門
> 〒060-0810 札幌市北区北10条西5丁目
>
>