У меня есть комбинированный график в JFreechart, состоящий из 4 временных диаграмм с общей осью временной области.JFreechart Realtime Combined Plot - рендеринг предыдущего значения для шага подкарта, если не получена точка данных
Данные для подзаговоров поступают с разной скоростью. Например, я могу получать событие изменения цены каждые пару миллисекунд и изменение позиции каждую минуту. В настоящее время я делаю эти серии с XYStepRenderer для создания диаграмм шагов.
Я хотел бы быть в состоянии сделать что-то вроде этого:
- Точка Цена принимается в момент времени T и строится на графике
- Нет данных получено не было в момент времени T для позиции диаграмму и поэтому мы предполагаем, что значение не изменилось, а предыдущее значение позиции визуализировано, то есть расширение горизонтальной линии горизонтально
- В момент времени T + 1 принимается позиция и отображается график изменения шага
- Время T + 1 никакой ценовой точки не получено, и поэтому p повторное значение рассчитывается
Есть ли простой способ сделать это в JFreechart? В настоящее время у меня есть рабочая реализация, но это не обрабатывает отображение принятых значений.
Мои первоначальные мысли были связаны с изменением модели данных, чтобы я мог быстро найти предыдущее значение и изменить вызовы, чтобы рассказать каждому подзаговору рисовать, когда событие получено для любого графика.
Спасибо за ваше предложение Брайан. Я получаю временные метки, и поэтому я могу контролировать обновления на диаграмме. То, что я хотел избежать, заключалось в построении точек (т. Е. Маркеров) на графиках, когда я фактически не получил никаких новых данных. В качестве быстрого дешевого взлома я подклассифицировал класс рендеринга XYStepLine, чтобы нарисовать расширенную строку для последней точки в наборе данных. Эта строка исправляется по мере поступления новых точек для серии. Я собираюсь ухаживать за созданием типа кэша данных диаграммы, чтобы разрешить повторную передачу старых данных и, скорее всего, включить ваши предложения в эту службу. – pjp
Отлично. Рад, что это было полезно –