2016-04-06

JavaFX: LineChart を使いこなそう (7) - ズーム(改2)

JavaFX のラインチャートをズームするサンプルを以前紹介しましたが、ズームの具合がよくありませんでした。確かにズームはできますが、マウスで指定した矩形の領域が正確に拡大されていません。どうやら座標計算が正確では無いようです。手軽にチャートのズームができる方法で気に入っていたので、じっくり調べて修正しました。いや、どうしてもズーム機能を使う目的があったため、なんとか実用に耐えうるレベルまで修正する必要があった、というのが現実です。

動作環境は次の通りです。

  • OS: Fedora 23 x86_64
  • jdk1.8.0_77-1.8.0_77-fcs.x86_64 (Oracle)
  • IDE: NetBeans IDE 8.1

まず最初に実行例を示します。

ソースは、もともと参考にした GitHub Gist のサイト [1] を fork して、修正を加えましたので、それを埋め込みました [2]。最初の LineChartZoomable.java が、LineChart クラスを継承して、ズーム機能を加えたクラス、その下の LineChartZoomableTest.java は、LineChartZoomable クラスを利用したサンプルです。なお、このクラスは、StackPane で最初の配置を行う必要があります。

参考サイト

  1. Example of a LineChart that can be zoomed via mouse.
  2. LineChartZoomable class that can be zoomed via mouse.

 

ブログランキング・にほんブログ村へ
にほんブログ村

0 件のコメント: