金曜日, 9月 11, 2009

matplotlib 0.98での2次元グラフの上下に違うスケールのメモリを表示させる (3)

今朝起きてまた考えてみた。

そもそも、何も考えずに書き写したこれがまずかった。

ax1 = mpl_toolkits.axes_grid.parasite_axes.SubplotHost(figure,1,1,1,aspect=1.)

これで片対数表示をさせようとしたおかげで以下の様な警告がでていた。

/usr/lib/python2.6/dist-packages/matplotlib/figure.py:730: UserWarning: aspect is not supported for Axes with xscale=linear, yscale=log
@allow_rasterization
/usr/lib/python2.6/dist-packages/matplotlib/axes.py:1618: UserWarning: aspect is not supported for Axes with xscale=linear, yscale=log
@allow_rasterization

あと、動作を見ていると、昨日のコードではアスペクト比計算が適切に処理してくれないのか(?)常に同じアスペクト比になっている様に見える。これが動作をおかしく見せていたみたい。このままだと今の用途には都合が悪すぎる。

途中すっ飛ばして、つまりなんだ、変な苦労をしてまで片対数表示にこだわる必要があるのか?単にdBに変数変換してplot()で表示すればいいんじゃないのか?

ということで望み通りの表示ができるようになった…プログラマとしては負けた気がするけど orz

0 件のコメント: