ブログ内検索

2019年5月18日土曜日

1-29 IN/OUTグラフの表示

デバッグメニューではIN/OUTの管理などをしようと思っている。
その中でPO率やIN,OUTグラフを作りたいと思っている。まあINはさすがにいらんか…。
とりあえず個別POを描画してみたい。
だが、ウディタでのグラフ描画はそう簡単ではない。
mathematicaならlistplotでもはやほぼ何も考えずにおしまいだが…。

とりあえず、PO率は最大値は5000%を超えるが、少なくとも上限値20000%くらいではおさまるだろう。しかしもし100個のPOデータがあり、1つだけ10000%とかでほかが50~100%程度におさまっていたら、同じ大きさのグラフでは縦方向に圧縮せねばデータを表現できず、これは非常に視覚的にもよろしくない。

とはいえ、そのようなことはあまり起こらないので、これだけを例外としてもいいだろう。
つまり、縦軸は最も下の軸をPOが0%、つまり「もう1回だにゃあ」あるいは「次こそGETするポギン」状態で上の軸はたまに発生頻度のある10倍程度かよいだろう。

さて、その下の軸をy=500、上の軸をy=100とするとき、どのようにPOに応じてyの値を定めればよいのか。
まあこれは簡単な話で、例えばPO350%ならば、yが400分で1000%分、ならば350%分はy座標が下の軸から140移動している。したがって描画すべきy座標は500-140=360となる。
x軸は、過去100回分のデータを記録するとするならば、左からn個目のデータは、とりあえず累計回数が100まではそのままn個目でよいが、100+k(kは自然数)回累計で行われるとn-kになるはず。
まあこのあたりは簡単な定義で済む。
だがや…。
どうやって折れ線を引くんや。

折れ線が点の集合とみなすと2点間の座標を100等分くらいする点を集合させれば疑似的に線を作ることはできる…がなんか…。
確かウディタには<LINE>とかで折れ線を引けるコマンドがあったような…。
まあ使ったことないが、今回初めてその恩恵にあずかってみるか…。