예제 #1
0
  public static DefaultCategoryDataset createDatasetForCriterionEvaluationCompareBarChart(
      List<Fragebogen> fragebogenList) {

    DefaultCategoryDataset defaultcategorydataset = new DefaultCategoryDataset();

    ArrayList<Bereich> bereiche =
        EvaluationHelper.getBereicheFromEvaluationHelper(fragebogenList.get(0).getBewertungen());

    for (Fragebogen f : fragebogenList) {

      double[] values = new double[bereiche.size()];
      int valCount = 0;
      for (Bereich bereich : bereiche) {
        valCount = 0;
        for (Bewertung bewertung : f.getBewertungen()) {
          if (bewertung.getItem() != null) {
            if (bereich.equals(bewertung.getItem().getBereich())) {
              if (!bewertung.getWert().isEmpty())
                values[bereiche.indexOf(bereich)] += Double.parseDouble(bewertung.getWert());
              valCount++;
            }
          }
        }
        if (valCount != 0) {
          values[bereiche.indexOf(bereich)] /= valCount;
        } else {
          values[bereiche.indexOf(bereich)] = 0;
        }
      }
      ArrayList<Handlungsfeld> hfList = new ArrayList<Handlungsfeld>();

      for (Bereich bereich : bereiche) {
        if (!hfList.contains(bereich.getHandlungsfeld())) {
          hfList.add(bereich.getHandlungsfeld());
        }
      }

      for (Handlungsfeld hf : hfList) {
        double ret = 0;
        int i = 0;
        for (Bereich bereich : bereiche) {
          if (bereich.getHandlungsfeld().equals(hf)) {
            ret += values[bereiche.indexOf(bereich)];
            i++;
          }
        }
        if (i > 0) {
          ret /= i;
        } else {
          ret = 0;
        }
        defaultcategorydataset.addValue(ret, f.getPerspektive().getName(), hf.getName());
      }
    }

    return defaultcategorydataset;
  }
예제 #2
0
  public static DefaultCategoryDataset getDatasetForCriterionBarChart(
      double[] avValueBereich, ArrayList<Bereich> bereiche) {
    DefaultCategoryDataset defaultcategorydataset = new DefaultCategoryDataset();
    double[] values = CalculationHelper.getAverageDataForCriterion(avValueBereich, bereiche);
    ArrayList<Handlungsfeld> hfList = new ArrayList<Handlungsfeld>();
    for (Bereich bereich : bereiche) {
      if (hfList.isEmpty() || !hfList.contains(bereich.getHandlungsfeld())) {
        hfList.add(bereich.getHandlungsfeld());
      }
    }
    for (Handlungsfeld hf : hfList) {
      defaultcategorydataset.addValue(
          values[hfList.indexOf(hf)],
          SeCatResourceBundle.getInstance().getString("scene.chart.all.averagevalues"),
          hf.getName());
    }

    return defaultcategorydataset;
  }