首先,我是Java和Stackoverflow的新手。因此,我希望我可以在我的问题中提供足够的清晰度。
我的目标是使用jfreechart创建箱形图,以跟踪日常使用中的测量值。我想通过存储最少的数据来做到这一点。通过存储平均值,标准差,中位数,1Q,3Q,最小值和最大值的统计信息。然后应通过每天测量的箱形图将其可视化。
我在这里看了箱形图演示
http://www.java2s.com/Code/Java/Chart/JFreeChartBoxAndWhiskerDemo.htm
在此演示中,他们创建了数据集并将所有值添加到数据集中,然后将其添加到绘图中。数据集本身包含返回数据集的平均值,中位数等的方法,以便能够创建绘图。请参阅下面的代码,以获取上面链接中的演示片段。
DefaultBoxAndWhiskerCategoryDataset dataset = new DefaultBoxAndWhiskerCategoryDataset();
//some type of algorithm to add values to the dataset
dataset.add(//values, series and type here);
// Return the finished dataset
CategoryAxis xAxis = new CategoryAxis("Type");
NumberAxis yAxis = new NumberAxis("Value");
yAxis.setAutoRangeIncludesZero(false);
BoxAndWhiskerRenderer renderer = new BoxAndWhiskerRenderer();
renderer.setFillBox(false);
renderer.setToolTipGenerator(new BoxAndWhiskerToolTipGenerator());
CategoryPlot plot = new CategoryPlot(dataset, xAxis, yAxis,
renderer);
JFreeChart chart = new JFreeChart("Box-and-Whisker Demo",
new Font("SansSerif", Font.BOLD, 14), plot, true);
所以我的问题是,我应该怎么做才能将中位数,Q1,Q3,均值,最小值和最大值相加来创建箱形图?因为在上面的演示中,它们基于完整样本集的图。
最佳答案
您可以创建自己的数据集类并使用它来创建图表。
创建您自己的BoxAndWhiskerCategoryDataset实现并使用它代替DefaultBoxAndWhiskerCategoryDataset
。