将图表与FastScatterPlot和LineChart @ JFreeChart与大数据相结合(680万条目~80MB)

时间:2011-06-09 13:08:58

标签: java charts jfreechart scatter-plot bigdata

我想显示一个结合LinePlot的FastScatterPlot。是否有可能将这些图表组合成一个组合图?不幸的是,对于开发者指南来说,它似乎不是这样吗?!至少没有例子。似乎只有XYDataset可能,但是使用2维数组来保存数据的FastScatterPlot必须使用add()方法填充XYDataset,如:

DefaultXYDataset dataset = new DefaultXYDataset();    
XYSeries dataSeries = new XYSeries("series 1");
dataSeries.add(xValue, yValue); //populate data: 6.8 million entries!
dataset.addSeries(new String(), dataset )
JFreeChart chart = ChartFactory.createScatterPlot("normaler scatterplot test", "X", "Y", dataset, PlotOrientation.HORIZONTAL, true,false, false);
ChartPanel chartPanel = new ChartPanel(chart, true);
getContentPane.add(chartPanel);

这是缓慢和最终导致堆栈溢出的方式(堆大小已经是512MB)!因此,我正在使用成功显示图表的FastScatterPlot。但如上所述,我不知道如何将其与例如一个LineChart。这是目前为止缩短的代码:

double[][] data = new double[2][6800000]; //6.8 million entries!!!! static data!
//populate data ...
FastScatterPlot plot = new FastScatterPlot(data, new NumberAxis("X"), new NumberAxis("Y"));
JFreeChart chart = new JFreeChart("Fast Scatter Plot", plot);
ChartPanel chartPanel = new ChartPanel(chart, true);
getContentPane.add(chartPanel);

0 个答案:

没有答案