2012-02-17 3 views
0

Как установить временной интервал для оси домена в TimeSeriesChart? Теперь у меня есть ось домена с метками, который выглядит что-то вроде: 22.00 23.00, 00.00, 1.00, 2.00 и т.д.JFreeCharts TimeSeriesChart установить интервал домена

Как я могу установить их люблю: 11 фев, 12 фев т.д. я должен иметь возможность вешать, чтобы увидеть все только если я масштабирую диаграмму.

Редактировать: Теперь я решаю его с помощью SimpleDateFormat.

DateAxis dateAxis = (DateAxis) plot.getDomainAxis(); 
DateFormatSymbols dfs = DateFormatSymbols.getInstance(); // default locale 
dateAxis.setDateFormatOverride(new SimpleDateFormat("dd-MMM-HH:mm", dfs)); 

Диаграмма отображается:

enter image description here

Edit: Вопрос остается открытым: можно ли установить что-то вроде группировка по дням для оси домена?

Edit: Больше информации :) Я пытаюсь получить некоторые данные за последнюю неделю периода, но если данные в базе данных только на 1 или 2 дня, график будет выглядеть следующим образом: enter image description here

как вы можете видеть timline на доменной оси хранит информацию с 00.00 (фактическое время начала - 23.xx) до 10.00, и это не хорошо, потому что пользователь должен увидеть день, который принадлежит данным. В этом случае я создаю TimeSeries и заполнить это нравится:

TimeSeries ts=new TimeSeries(name); 
ts.addOrUpdate(new Hour(date), value); 

Если я заполняю тс как

ts.addOrUpdate(new Day(date), value); 

то график не показывает никаких данных

enter image description here

Quistion является как чтобы сделать данные группы диаграммы (возможно, с помощью увеличения) по дням, как на следующей диаграмме?

enter image description here

ответ

1

Если добавить любой RegularTimePeriod к TimeSeries, соответствующая ось будет использовать выведенный период в качестве руководства для форматирования. Связанный пример, который использует Day, может быть найден here.

Addendum: См. Также это связанное answer относительно DateTickUnit.

+0

Благодарим за отзыв. Я уже попробовал, но в этом случае некоторые чарты, хранящие информацию в течение нескольких часов, были пустыми. например, у меня есть 0 элементов данных на 0.00, 1 на 7.00 и 0 снова на 2.00 данных, добавленных с регулярным периодом времени Hour, в этом случае диаграмма отображается как треугольник, и это нормально ... но когда я использую Day RegularTimePeriod -chart empty , а ось домена содержит даты 23: 59: 59: 999 и 00: 00: 00: 000 – Volad

+0

. Измените свой вопрос, включив в него [sscce] (http://sscce.org/), который показывает проблему, которую вы описываете. – trashgod

+0

Вы пытались изменить 'TickUnit', как было предложено выше? – trashgod