Я пытаюсь создать временной ряд набора ценовых данных, который у меня есть. Все значения времени хранятся в формате posix, то есть в миллисекундах после 1970 года, поэтому для них требуется создание экземпляра надлежащего объекта, который можно передать в TimeSeries. Есть ли какой-либо конкретный объект, который может использовать миллисекунды в качестве параметра конструктора и по-прежнему предоставлять информацию, такую как день/месяц/год и т. д., что-то вроде класса Java.util.Date?
Временные ряды JFreeChart
Ответы (1)
Когда вы заполняете свой TimeSeries
, вы можете использовать метод add(RegularTimePeriod, Number)
.
Существует несколько реализаций RegularTimePeriod
, включая Day
и Millisecond
, в зависимости от структуры ваших данных.
Это все классы jfreechart.
Однако мы обнаружили, что в некоторых наших приложениях создание TimeSeries
из RegularTimePeriod
было неэффективным с точки зрения использования памяти, потому что вам приходилось создавать новый объект для каждой временной точки в вашей серии. Таким образом, я обнаружил, что лучшим подходом было бы написать нашу собственную реализацию AbstractXYDataset
, к которой мы могли бы добавить наши собственные объекты временных рядов. Я должен добавить, что затем мы используем ChartFactory.createTimeSeriesChart(...)
, передавая в нашей реализации AbstractXYDataset
; это имеет преимущество использования DateAxis
для оси x.