2015-02-13 5 views
0

Во-первых, я новичок в Java и Stackoverflow. Поэтому я надеюсь, что смогу предоставить достаточно ясности в моем вопросе.Врезной график с использованием JFreeChart

Моя цель - создать полевой график с использованием 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, средний, минимальное и максимальное значение для создания окна сюжета? Потому что в демо выше они основывают график полного набора образцов.

ответ

1

Вы можете создать свой собственный класс набора данных и использовать его для создания диаграммы.

Создайте собственную реализацию BoxAndWhiskerCategoryDataset и используйте ее вместо DefaultBoxAndWhiskerCategoryDataset.

+0

Okey, спасибо за ответ, я сделаю +1, как только получу 15 rep, вы имеете в виду, что я должен переписать весь класс или подкласс, а затем переопределить используемые методы? – fulp

+0

Ваш класс может быть чем-то вроде: MyDataSet расширяет AbstractDataset реализует BoxAndWhiskerCategoryDataset. Надеюсь, вам не придется переписывать многие методы. –

+0

Хорошо, я попробую этот подход! Спасибо за Ваш ответ! – fulp

Смежные вопросы