gpt4 book ai didi

java - Jfreechart:如何获取 BoxAndWhiskerChart 中的各个项目

转载 作者:行者123 更新时间:2023-12-01 14:04:05 25 4
gpt4 key购买 nike

我正在生成一个盒须图,每个类别有一个项目。我还想生成一份报告,其中包含 BoxPlot 中每个项目的平均值、中位数和所有值。因此,在我基于categoryType创建数据集defaultboxandwhiskercategorydataset之后,我调用convertReportData方法来获取defaultboxandwhiskercategorydataset中的每个项目,并将平均值、中位数等保存到另一个数据对象中以供稍后生成报告。但它只打印一个类别。谁能帮我找出问题所在吗?

我的箱线图 enter image description here

代码:

public static BoxAndWhiskerCategoryDataset createDataset() {
startTime = inputData.getItimeFrom();
endTime = inputData.getItimeTo();
List<String> categorylist = new ArrayList<>();
categorylist.add("Distance 0-20");
categorylist.add("Distance 20-40");
categorylist.add("Distance 40-60");
categorylist.add("Distance 60-80");
categorylist.add("Distance 80-100");
categorylist.add("Distance >100");
Map<String, List<Double>> map = new HashMap<String, List<Double>>();
map = addDistance(values_list);
DefaultBoxAndWhiskerCategoryDataset defaultboxandwhiskercategorydataset = new DefaultBoxAndWhiskerCategoryDataset();
for (String categoryType : categorylist) {
map.remove(null);
for (Map.Entry<String, List<Double>> entry : map.entrySet()) {
if (entry.getKey().equalsIgnoreCase(categoryType)) {
defaultboxandwhiskercategorydataset.add(entry.getValue(),
categoryType, " ");
}
}

}
convertReportData(defaultboxandwhiskercategorydataset, categorylist);
return defaultboxandwhiskercategorydataset;
}
private static void convertReportData(DefaultBoxAndWhiskerCategoryDataset boxandwhiskercategorydataset, List<String> latencyTypelist) {
report = new HashMap<>();
for (int i = 0; i < boxandwhiskercategorydataset.getColumnKeys().size(); i++) {
BoxAndWhiskerItem item = boxandwhiskercategorydataset.getItem(i, 0);
ReportData data = new ReportData();
data.setMean(item.getMean());
data.setMedian(item.getMedian());
data.setQ1(item.getQ1());
data.setQ3(item.getQ3());
data.setMaxOutlier(item.getMaxOutlier());
data.setMaxRegularNumber(item.getMaxRegularValue());
data.setMinOutlier(item.getMinOutlier());
data.setMinRegularNumber(item.getMinRegularValue());
data.setOutliers(item.getOutliers());
report.put(boxandwhiskercategorydataset.getRowKey(i).toString(),
data);
}

}

最佳答案

问题在于

 for (int i = 0; i < boxandwhiskercategorydataset.getColumnKeys().size(); i++) {

您正在使用 getColumnKeys,而您只有一列。应该是这样的,

 for (int i = 0; i < boxandwhiskercategorydataset.getRowKeys().size(); i++) {

关于java - Jfreechart:如何获取 BoxAndWhiskerChart 中的各个项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19077043/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com