1

JFreeChartを使用してXYPlotを描画しています。私が現在やろうとしていること:

  1. ユーザーがプロットをクリックすると、アプリは選択したポイントの座標を返します。私はそれが正しいと思います。ここにいくつかのコードがあります:

        public void chartMouseClicked(ChartMouseEvent arg0) {
               Rectangle2D plotArea = chPanel.getScreenDataArea();
               XYPlot plot = (XYPlot) chart.getPlot();
               double chartX = plot.getDomainAxis().java2DToValue(arg0.getTrigger().getPoint().getX(), plotArea, plot.getDomainAxisEdge());
               double chartY = plot.getRangeAxis().java2DToValue(arg0.getTrigger().getPoint().getY(), plotArea, plot.getRangeAxisEdge());
               JOptionPane.showMessageDialog(null, "   x: "+chartX+ "  y: "+chartY);}       
    
  2. ユーザーがその行をクリックしたかどうかを判断する必要があります。目標は、クリックされたスポットが描画されたグラフ上にある場合、それをマークすることです。

手がかりをいただければ幸いです。

4

2 に答える 2

1

座標を操作する代わりに、ここChartMouseListenerに示すようにを追加します。さまざまな詳細について、および対応するものを調べることができます。ChartMouseEventChartEntity

于 2012-04-14T19:07:49.717 に答える
0
ShapeUtilities.intersects(java.awt.geom.Rectangle2D rect1, java.awt.geom.Rectangle2D rect2) 

ここで、rect2は「0」の長方形(ポイント用)にすることができます。

于 2012-09-27T01:50:09.683 に答える