AG(1)

May 11 2000

[ 名称 | 書式 | 解説 | オプション | キー操作 | マウス | バグ | 作者 | ホームページ | 関連項目 ]

名称

ag - Ascii Graph

書式

ag [option ...] [file ...]

解説

AG は ASCII 文字を使って xterm 等のキャラクタ端末上にグラフを描画します。 また、1 文字のコマンドをキーボードから入力することでグラフを操作する ことができます。 使用可能な操作には、ズーム/アンズーム、log/linear 切替え、 描画範囲のスクロール、などがあります。 詳しくは キー操作 のセクションを見てください。

入力データのフォーマットは xgraph(1) に従います。

簡単な例:

  "Label of data set"
  1.0 2.0
  2.0 4.0

  "Next data set"
  1.0 1.0
  -1.0 -1.0
  move -1.0 1.0
  1.0 -1.0

各データセットは空行で区切られます。 X, Y データの前に "move" があると直前のデータとつなぎません。 X 用のリソース行は無視されます。 また、カンマ(,)で区切ったデータも受け付けます。

オプション

-bg background
グラフの背景色を指定します。 以下の色が指定可能です。

  bla[ck], r[red], b[lue], g[reen], m[agenta],
  y[ellow], c[yan], w[hite]

デフォルトは、"black" です.

-c colors
データセットの表示色をカンマ(,)で区切って指定します。 指定可能な色は -bg オプションと同じです。 デフォルトは、"r,b,g,m,y,c" です。
-fg foreground
端末の前景色を指定します。 指定可能な色は -bg オプションと同じです。 デフォルトは、"white" です.
-g
グリッドを表示します。 デフォルトでは表示します。
-h
ヘルプメッセージを表示して終了します。
-lnx
X 軸を log スケールにします。 デフォルトでは linear スケールです。
-lny
Y 軸を log スケールにします。 デフォルトでは linear スケールです。
-lx xmin,xmax
X 軸の範囲を指定します。 "auto" を指定するとオートスケールになります。 デフォルトでは "auto" です。
-ly ymin,ymax
Y 軸の範囲を指定します。 "auto" を指定するとオートスケールになります。 デフォルトでは "auto" です。
-m marker_types
データセットのマーカを、ASCII 文字を並べた文字列で指定します。 指定した文字数よりデータセットの数が多い場合は繰り返して使用されます。 デフォルトでは、"xo*+@" です。
-M
マウスを有効にします。 対応している端末は xterm 系だけです。 端末のタイプが xterm または kterm の場合は、デフォルトでマウスが有効です。
-ng
グリッドを表示しません。 デフォルトでは表示します。
-nl
データ間をつなぐ線を表示しません。 デフォルトでは表示します。
-nm
マーカを表示しません。 デフォルトでは表示します。
-nM
マウスを無効にします。
-rv
反転表示。前景色(foreground)と背景色(background)を入れ替えます。
-t title
グラフのタイトルを指定します。 デフォルトでは "Ascii Graph" です。
-T term
端末のタイプを指定します。 デフォルトでは環境変数 $TERM です。
-v
バージョンを表示して終了します。
-x x_axis_name
X 軸の名前を指定します。 デフォルトでは "X-Axis" です。
-y y_axis_name
Y 軸の名前を指定します。 デフォルトでは "X-Axis" です。
-z zoom_ratio
ズームする時の割合を指定します。 デフォルトでは、"0.5" (2倍)です

キー操作

5 つのモード(グラフモードクロップモードX(Y)軸モードリストモードヘルプモード) があります。 ほとんどのコマンドに対して、繰り返しを指定する数字 N (= 1〜99) をコマンドに先行して入力することが出来ます。

グラフモード(通常の状態)

[N] l, <RIGHT>
カーソルを(N だけ)右へ移動します。
[N] h, <LEFT>
カーソルを(N だけ)左へ移動します。
[N] j, <DOWN>
カーソルを(N だけ)下へ移動します。
[N] k, <UP>
カーソルを(N だけ)上へ移動します。
[N] L
カーソルを右方向に(N だけ)次の点まで移動します。
[N] H
カーソルを左方向に(N だけ)次の点まで移動します。
[N] J
カーソルを下方向に(N だけ)次の点まで移動します。
[N] K
カーソルを上方向に(N だけ)次の点まで移動します。
[N] .
描画範囲を右に 1 カラム(N カラム)だけスクロールします。
[N] ,
描画範囲を左に 1 カラム(N カラム)だけスクロールします。
[N] f
描画範囲を下に 1 行(N 行)だけスクロールします。
[N] b
描画範囲を上に 1 行(N 行)だけスクロールします。
[N] >
描画範囲を右に 1 画面(N 画面)だけスクロールします。
[N] <
描画範囲を左に 1 画面(N 画面)だけスクロールします。
[N] F, <CNTL>-F
描画範囲を下に 1 画面(N 画面)だけスクロールします。
[N] B, <CNTL>-B
描画範囲を上に 1 画面(N 画面)だけスクロールします。
[N] n
データセットの(N だけ)次の点に移動します。
[N] p
データセットの(N だけ)前の点に移動します。
[N] N, <CNTL>-N
(N だけ)次のデータセットに移動します。
[N] P, <CNTL>-P
(N だけ)前のデータセットに移動します。
<SPACE>, <RETURN>
カーソル上にあるデータセットをアクティブにします。 アクティブになったデータセットは反転表示されます。
<TAB>
アクティブ/非アクティブをトグルします。
a
オートスケール。
[N] z
カーソル位置を中心としてズーム。 N が指定された場合は N 倍、指定されない場合は 1/zoom_ratio 倍。
[N] Z
(N 回)アンズーム。
c
クロップを開始(クロップモード へ移行)します。
g
グリッドの表示をトグルします。
*
(アクティブなデータセットの)マーカの表示をトグルします。
+
(アクティブなデータセットの)データ間をつなぐ線の表示をトグルします。
x
X 軸モード へ移行します。
y
Y 軸モード へ移行します。
v
データ値をリスト表示します。 リストモード へ移行します。
q
確認メッセージを出して y なら終了します。
Q
確認メッセージなしで終了します。
<CNTL>-L
再描画します。
?
コマンド一覧を出力(ヘルプモード へ移行)します。

クロップモード

l, <RIGHT>, h, <LEFT>, j, <DOWN>, k, <UP>, L, H, J, K,
q, Q, <CNTL>-L
グラフモード と同じ。
<SPACE>, <RETURN>
クロップ範囲を確定します。
その他
グラフモード へ戻ります。

X(Y) 軸モード

l
X(Y) 軸の log/linear をトグルします。
r
X(Y) 軸の範囲を反転します。
a
X(Y) 軸をオートスケールします。
[N] z
X(Y) 軸をズームします。
q, Q, <CNTL>-L
グラフモード と同じ。
その他
グラフモード へ戻ります。

リストモード

[N] j, <DOWN>
1 行(N 行)だけ下へスクロールします。
[N] k, <UP>
1 行(N 行)だけ上へスクロールします。
[N] f, <SPACE>, <RETURN>
(N だけ)次のページを表示します。
[N] b
(N だけ)前のページを表示します。
[N] n
(N だけ)次のデータセットを表示します。
[N] p
(N だけ)前のデータセットを表示します。
<CNTL>-L
再描画します。
その他
グラフモード へ戻ります。

ヘルプモード

[N] j, <DOWN>
1 行(N 行)だけ下へスクロールします。
[N] k, <UP>
1 行(N 行)だけ上へスクロールします。
[N] f, <SPACE>, <RETURN>
(N だけ)次のページを表示します。
[N] b
(N だけ)前のページを表示します。
<CNTL>-L
再描画します。
その他
グラフモード へ戻ります。

マウス

xterm または kterm 上ではマウスが使用可能です。 グラフモードでのみ効果があります。

左ボタン

クリック
カーソル上にデータのマーカがあり、 その上でクリックした場合は、そのデータセットをアクティブにします。 グラフの右側のラベルの上でクリックした場合も、 そのデータセットをアクティブにします。 それ以外の場合はカーソルを移動します。
ドラッグ
描画範囲をスクロールします。

中ボタン

クリック
アンズーム。
ドラッグ
無効。

右ボタン

クリック
カーソル位置を中心としてズーム。
ドラッグ
クロップ。

バグ

端末をリサイズした場合に正しく動作しない可能性があります。

xterm または kterm 上でマウスを有効にした状態で、 サスペンドすると、マウスが効かなくなります。

作者

坂本 浩則 <hsaka@mth.biglobe.ne.jp>

ホームページ

http://www2u.biglobe.ne.jp/~hsaka/ag/

関連項目

xgraph(1), ncurses(3)