2017-08-21 94 views
0

StandardXYToolTipGeneratorを使用して線グラフにツールチップを追加しました。x軸に沿ったJFreeChartの複数のツールチップ

final XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer(); 
plot.setRenderer(renderer); 
renderer.setBaseToolTipGenerator(new StandardXYToolTipGenerator()); 

正常に機能しますが、正確なポイントにカーソルを移動してツールチップを表示する必要があります。 Plotlyのようなことができることを願っています。ここでは、すべてのシリーズのツールチップがx軸に沿って表示されます。

答えて

1

ChartFactory.createXYLineChart()とすると、tooltipsパラメータをtrueに設定すると、ツールチップを有効にすることができます。工場のsourceがあなたのフラグメントにどのように似ているかに注意してください。

有効にすると、それはレンダラを聞かせするのを助けることができるが、対応する形状が見えるように:

final XYPlot plot = (XYPlot) chart.getPlot(); 
XYLineAndShapeRenderer r = (XYLineAndShapeRenderer) plot.getRenderer(); 
r.setBaseShapesVisible(true); 

いくつかのケースでは、あなたも、図形を拡大したいことがあります。

r.setSeriesShape(0, ShapeUtilities.createTranslatedShape(
    new Rectangle(12, 12), -6, -6)); 

完全な例表示されますhere。 はAxisEntityにも対応できることに注意してください。

image

hereを示すように、あなたはまた、選択的に形状を変更することができます。 hereのように、表示されたツールチップにアクセスできます。

+0

実際、私の質問には答えられませんでした。私はhttps://codepen.io/plotly/pen/GJPjeYのようなものを実装したいと思います。マウスを置いたときに複数のツールチップがデータポイントに表示されます。とりあえずありがとう。 – SamTew

+0

これはほんのいくつかの選択肢です。あなたは 'ChartMouseListener'に' AxisEntity'型の 'ChartEntity'のために必要なものを表示できます。私はおそらく、隣接する 'TableModel'を更新するでしょう。 – trashgod

関連する問題