1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140
|
=begin
= module Pgplot
== モジュールメソッド
=== 操作
--- pgopen([device])
PGPLOTセッションを開始する。戻り値としてステータスを返す。
--- pgbeg([device, [nxsub, [nysub]]])
(obsolete)
PGPLOTセッションを開始する。戻り値としてステータスを返す。
--- pgask( [true|false] )
--- pgenv( xmin,xmax,ymin,ymax [,just, axis] )
=== 線・マーカの描画
--- pgline( xarray, yarray )
xarray, yarray を結ぶ線を描く。
xarray, yarray はそれぞれ X, Y 座標の配列。
--- pgpt( xarray, yarray [,symbol] )
xarray, yarray の位置に、symbol のマーカを描く。
--- pgpnts( xarray, yarray, symarray )
xarray, yarray の位置に、対応する symarray のマーカをそれぞれ描く。
=== ヒストグラム
--- pgbin( xarray, yarray [,center] )
--- pghist( data, nbin [,range, flag] )
=== エラーバー
--- pgerrb( dir, x, y, err [,tlen] )
エラーバーを描く。
tlen に端点に描くバーの長さを指定。
+ 片側エラーバー:
* dir = 1 for +X (X to X+err)
* dir = 2 for +Y (Y to Y+err)
* dir = 3 for -X (X to X-err)
* dir = 4 for -Y (Y to Y-err)
+ 両側エラーバー:
* dir = 5 for +/-X (X-err to X+err)
* dir = 6 for +/-Y (Y-err to Y+err)
--- pgerrx( x1, x2, y [,tlen] )
x1 から x2 までを結ぶエラーバーを描く。
tlen に端点に描くバーの長さを指定。
--- pgerry( x, y1, y2 [,tlen] )
y1 から y2 までを結ぶエラーバーを描く。
tlen に端点に描くバーの長さを指定。
=== 等高線
--- pgcont( map, cont [,tr] )
map で与えた2次元マップの等高線を描く。
cont には等高線のレベルまたはその配列を与える。
--- pgcons( map, cont [,tr] )
PGCONTより速いアルゴルズムで描くんだそうな。
--- pgconb( map, cont [,blank, tr] )
blankで与えた値を欠損値として等高線を描く。
--- pgconf( map, cont_range [,tr] )
cont_range に Rangeクラスオブジェクトで与えた範囲のレベルを塗り潰す。
--- pgconl( map, cont, label [,intval, minint, tr] )
等高線にラベルをつける。
=== 画像
--- pgimag( array [,range, tr] )
カラースケールで array (2次元配列) の画像を描く。
--- pgctab( l, r,g,b [,contra,bright] )
pgimag で使用するカラーテーブルを設定する。
--- pggray( array [,range, tr] )
グレースケールで array (2次元配列) の画像を描く。
--- pgpixl( array [,x1,x2,y1,y2] )
array (2次元配列) の画像を、長方形のpixel 1つ1つで描く。
--- pgvect( x, y [,scale, pos, tr, blank] )
ベクトル場を描く。
=== 座標軸の描画
--- pgtick( x1, y1, x2, y2, v, [str], {"tickl", "tickr", "disp", "orient"} )
--- pgaxis( x1, y1, x2, y2, v1, v2,
{"opt", "step", "nsub", "tickl", "tickr", "frac", "disp", "orient"} )
=== カーソル入力
--- pgcurs([x,y])
クリックまたはキータイプのイベントを取得する。
x,y を指定すると始めにその位置にカーソルを移動する。
イベントを取得すると
カーソル位置(WC)と文字を PgCursorクラスのインスタンスで返す。
--- pgband( mode, [ xref, yref, [x, y, [posn]]])
クリックまたはキータイプのイベントを取得する。
x,y を指定すると始めにその位置にカーソルを移動する。
xref, yref はアンカー点の位置(後述)で、省略すると現在位置となる。
イベントを取得すると
カーソル位置(WC)と文字を PgCursorクラスのインスタンスで返す。
modeによりカーソル入力中の描画方法を指定できる。
* mode=0 : 描画なし。
* mode=1 : アンカー点とカーソルを結ぶ線。
* mode=2 : アンカー点とカーソルを対角とする長方形。
* mode=3 : アンカー点とカーソル位置それぞれを通る2本の水平線。
* mode=4 : アンカー点とカーソル位置それぞれを通る2本の垂直線。
* mode=5 : カーソル位置を通る水平線。
* mode=6 : カーソル位置を通る垂直線。
* mode=7 : カーソル位置を通る十字線。
--- pgolin( x, y, [sym, [npt]] )
マウスカーソルで座標を連続して入力する。
x,y にはあらかじめ NArray::SFLOAT 型の配列を与えておき、
そこへクリックした順番に座標を記録していく。
入力できる個数はこの配列のサイズで制限される。
カーソルで入力した点は、マーカ sym で描画される。
npt を指定すると、あらかじめ npt 個の点が入力されているとみなす。
戻り値は入力した点の数。
--- pgncur( x, y, [sym, [npt]] )
x,yに記録される順番が x の小さい順であることを除き、pgolin と同じ。
--- pglcur( x, y, [npt] )
入力した点を結ぶ線が描かれることを除いて、pgolin と同じ。
=== ステータスを返す
--- pgqinf(item)
value = pgqinf(item)
--- pgqdt([ndev])
type, descr, inter = pgqdt([ndev])
=end
|