|
ichinose 様
>>InsideLeftとInsideTopの値は、図面左上(X最小軸,Y最大軸)から(-4,-4)であることから
>> With ActiveChart.PlotArea
>> Lp = .InsideLeft + 4: Tp = .InsideTop + 4
>↑これは、疑問ですねえ??、せっかくActiveWindow.Zoomを使用して
>倍率まで考慮しているのに定数を指定してしまって大丈夫ですか?
>倍率が変われば4に相当する値も変わりますよ!!
ここでの4は、0.75 * x * 100 / ActiveWindow.Zoom により換算した上での実験値ですので論理的な根拠はありませんが、表示倍率の変更には対応できています。(但しグラフの左上が表示されていない場合は、おかしな数値を返します)
>そもそも4が合っていますか?
>ポイントは0.75単位なんですけどねえ・・・。
>もし、気がついたら調べてみてください。
うっ これは、・・・『4』を得るために200%とか400%で見ているときに4.025とか3.925がでていて150%や75%のときに4.00が出たのが印象に残ったのかな?
まあ、もともとポイントごと(デジタル的?)の選択しか出来ないので本当に正確な値と言うのは無理ですから、この程度の誤差はしょうがないと思います。
確認したところ、75%表示のときに1ドット=1また150%表示のときに1ドット=0.5ですから、グラフ軸左上とPlotAreaの左上は 16/3*ActiveWindow.Zoom/100 ドット(当然四捨五入)ずれていると言うことみたいですね。
|
|