JasperReports: Как добавить дату в формате ЧЧ:ММ:СС на ось X диаграммы XY-Line?

Я хочу добавить дату в формате ЧЧ: ММ: СС на ось X диаграммы XY-Line. Я использую следующий код, чтобы сделать это:

<xValueExpression>![CDATA[new SimpleDateFormat("HH:mm:ss").format($F{time})]]</xValueExpression>

Но выдает ошибку, так как не может преобразовать строку в число. Потому что диаграмма XY-Line принимает числа по осям X и Y.

Итак, как этого добиться? Или есть другой способ добиться этого?


person Aru    schedule 19.04.2010    source источник


Ответы (2)


Я обнаружил, что проще создавать диаграммы из вашего java-кода (используя JFreechart в моем случае), писать диаграмму на изображении и передавать ее Джасперу. В моем случае я всегда использую пользовательские источники данных, а диаграммы являются параметрами входного потока. Когда вы строите диаграммы самостоятельно, у вас есть полный доступ к JFreechart API.

person Guillaume    schedule 19.04.2010

Я знаю, что я слишком поздно, но, возможно, это кому-то еще понадобится. Вы должны использовать Line Chart вместо XY-Line Chart, а затем использовать DateFormat.getTimeInstance().format(new Date($F{time})). Это сработало у меня.

person smbdy    schedule 09.03.2012