Создание JfreeCharts в цикле for - PullRequest
1 голос
/ 31 марта 2012

Я читаю из входного потока и сохраняю данные в массиве. Теперь, если какое-то условие проверки (и хотя входной поток не полностью прочитан, я хочу создать диаграмму).

for (int i = 0; i < jsonMainArr.size(); i++) 
{ 
     JSONObject childJSONObject = jsonMainArr.getJSONObject(i);   
    String date1 = childJSONObject.getString("date");
    DateFormat forma=new SimpleDateFormat("yyyy-MM-dd");
    Date dre=forma.parse(date1);
    d[i]=dre;

    if(somecondition)
    {
        CandleStickChart chart = new CandleStickChart("Candle Stick Chart");
        chart.pack();
        RefineryUtilities.centerFrameOnScreen(chart);
        chart.setVisible(true);
    }
}

Теперь, если dre - это конкретные данные, я хочу отобразить график. Я не хочу выходить из цикла for, потому что другие данные (данные следующих компаний все еще должны быть проанализированы). Я заметил, что это не работает внутри цикла, а работает только вне его. Что я могу сделать, чтобы преодолеть эту трудность.

1 Ответ

2 голосов
/ 31 марта 2012

Запустите цикл сбора данных в другом потоке, например, SwingWorker.Вызывайте publish() только для завершенных моделей, отмечая те, которые вы хотите отобразить.Отобразить график в process().

...