Omr*_*dan 7 java mouse jfreechart
我有一个显示进程内存状态的JFreeChart实例,初始化如下:
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);
Run Code Online (Sandbox Code Playgroud)
稍后我将值添加到TimeSeriesCollection中的每个TimeSeries.我想以某种方式知道 - 当用户点击图表时 - 与该列相关联的时间,或者甚至更好 - 该值的索引是什么.
我查看了JFreeChart和ChartMouseListener类,但我无法弄清楚如何做到这一点(JFreeChart的文档也非常缺乏,我猜他们试图让人们购买他们的开发人员指南).
嗯应该可以,如果你用这样的东西替换最后两行:
ChartPanel panel=new ChartPanel(ChartFactory.createTimeSeriesChart("Memory usage", "Time", "Size", m_data, true, true, false)));
panel.addChartMouseListener(new ChartMouseListener(){
void chartMouseClicked(ChartMouseEvent e){
[...do something on click...]
}
void chartMouseMoved(ChartMouseEvent e){
[...do something on move...]
}
});
return panel;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10778 次 |
最近记录: |