наведите курсор на линию графика в jfreechart - PullRequest
0 голосов
/ 10 мая 2009

Я хотел бы знать, есть ли способ определить, когда мышь находится над линией / линиями графика, и иметь возможность доступа к данным из набора данных, соответствующего этой точке.

1 Ответ

0 голосов
/ 29 июля 2009

Получение этих данных зависит от того, где вы используете график. В свинг-приложении используйте слушателей мыши с панели, на которой отображается график.

На веб-странице, использующей изображение, вы не сможете получить данные (так как это всего лишь изображение), но JFreeChart сгенерирует для вас карту изображения, которая может вызывать скрипт Java при наведении.

В недавнем проекте я сделал что-то вроде:

        ChartRenderingInfo info = new ChartRenderingInfo(new StandardEntityCollection());  
  String pngLocation = Servlet.saveChartAsPNG(chart, 200, 200, info, request.getPortletSession());
            StringWriter sw = new StringWriter();
            ChartUtilities.writeImageMap(new PrintWriter(sw), pngLocation, info, false);

Здесь chart - это JFreeChart с соответствующими флагами того, что вы хотите сделать (подсказки, ссылки, ярлыки)

...