que tienen una instancia JFreeChart que muestra el estado de la memoria del proceso, inicializa como sigue:JFreeChart: obtener valor de la fuente de datos de clic del ratón
m_data = new TimeSeriesCollection();
TimeSeries vmsize = new TimeSeries("VMSize");
TimeSeries resident = new TimeSeries("Resisdent");
TimeSeries shared = new TimeSeries("Shared memory");
TimeSeries code = new TimeSeries("Code");
TimeSeries data = new TimeSeries("Data");
m_data.addSeries(vmsize);
m_data.addSeries(resident);
m_data.addSeries(shared);
m_data.addSeries(code);
m_data.addSeries(data);
JFreeChart chart = ChartFactory.createTimeSeriesChart("Memory usage", "Time", "Size", m_data, true, true, false);
m_chart = new ChartPanel(chart);
Más tarde añadir valores a cada uno TimeSeries en el TimeSeriesCollection. Me gustaría de alguna manera saber, cuando el usuario hace clic en el Gráfico, ya sea qué hora está asociada con esa columna, o incluso mejor, cuál es el índice del valor.
Miré las clases JFreeChart y ChartMouseListener, pero no pude encontrar la manera de hacerlo (también la documentación de JFreeChart es increíblemente escasa, supongo que están intentando que la gente compre su guía para desarrolladores).
Bueno, ya he visto ChartMouseLIstener, la información en el caso es bastante inútil. la pregunta no es cómo agregar un oyente, sino cómo obtener los datos relevantes del evento. –
puede usar ChartEvent.getEntity() para obtener la forma (barra, línea) debajo del mouse http://www.jfree.org/jfreechart/api/javadoc/org/jfree/chart/entity/ChartEntity.html – fasseg
+ 1, funciona como un campeón! – trashgod