gnuplot : 各種オブジェクトを配置するときの座標について(Coordinates)
gnuplotでの各種オブジェクト配置の座標について
gnuplotでラベルを配置するときに例えばgnuplot> set label 1 "test label" at 3, 5
のようにするとx, y座標で(3, 5)の位置にラベルが配置されます。
この指定方法ではグラフを描いている途中でx, y座標範囲を変更すると、配置したラベルもそれに合わせて位置が変わってきます。それで問題ない場合もありますが、グラフ上で決まった位置に配置しておきたい場合はこれでは不便でしょう。この場合は、"at"で位置を指定する際に、x, y座標以外の座標を用いるよう指定することで対処出来ます。
gnuplotで用いることの出来る座標指定の種類
"at"において指定出来る座標の種類をリストアップすると以下のようになります。- first : 第1軸のx, y座標(デフォルト)
- second : 第2軸のx, y座標
- graph : プロットエリア内の位置を基準(縦横それぞれ0〜1の範囲 :[備考] 範囲を超えた指定も可能だが、描画範囲内に収まるようにしないと表示されない)
- screen : プロットスクリーン内の位置を基準(縦横それぞれ0〜1の範囲 :[備考] 範囲を超えた指定も可能だが、描画範囲内に収まるようにしないと表示されない)
- polar : 極座標プロットで配置するときに用いられる
- character : フォントサイズを元にした位置指定(1文字が1という単位 :[備考] そのときのフォントサイズに依存)
graphとscreenの違い
graphとscreenはプロットエリアを基準にするかスクリーンを基準にするかの違いで、比べて見るとぱっと見ではあまり差が無いように見えます。以下にgraphとscreenで縦横0.1ずつ変化させていったときの位置の参考となるグラフを作って置いたので見比べてみて下さい。graph座標 |
screen座標 |
縦横で別々の指定を用いることも出来る
at graph 0.5, 0.2
とすると、これはプロットエリアの左下を(0, 0)、右上を(1, 1)として、(0.5, 0.2)の位置となります。そして横はgraph、縦はy座標で指定したいという場合は
at graph 0.5, first 3
というように別々に組み合わせた指定も出来ます。
gnuplot関連のブログ記事
コメント
コメントを投稿