2016-04-29 3 views
1

Я разработал приложение, основанное на программе jFreeChart StackedBarChartDemo4.java.Добавить всплывающие подсказки к jfreechart сложенным баром с подкатегориями

Изображение, сделанное моей модифицированной демонстрацией, выглядит так, но в демонстрационном коде нет попытки добавить подсказки к сегментам.

Как я могу добавить подсказку для каждого из сотрудников, отображаемых в каждом баре?

Благодаря Эллиот

StackedBarChartDemo4

ответ

2

Добавить конкретный CategoryToolTipGenerator к выбранному визуализатора, например:

renderer.setBaseToolTipGenerator(new StandardCategoryToolTipGenerator()); 

Значения по умолчанию описаны here, но вы можете переопределить generateToolTip() и получить доступ к CategoryDataset, чтобы показать что-нибудь вообще.

Мои значения серии входят в «умение (Emp)», и я хотел бы отделить их.

В качестве конкретного примера, следующий пользовательский рендерер отобразил бы только часть «Emp» серийного ключа.

renderer.setBaseToolTipGenerator(new StandardCategoryToolTipGenerator() { 
    @Override 
    public String generateToolTip(CategoryDataset dataset, int row, int column) { 
     String s = super.generateToolTip(dataset, row, column); 
     int b = s.indexOf('(', 1) + 1; 
     int e = s.indexOf(')'); 
     return s.substring(b, e); 
    } 
}); 
+0

Спасибо за этот trashgod - это сработало! Поскольку в моей диаграмме используются подкатегории, мне интересно, если есть все равно, чтобы разобрать серию {0} в две части. Мои значения серии входят в «Skill (Emp)), и я хотел бы разделить их в подсказках или показывать только один из них. – Elliot

+0

Возможно, вам придется играть с помощью' String :: indexOf() 'и' String :: substring() 'в пользовательском' generateToolTip() '. Пинг меня, если здесь, если вы публикуете новый вопрос по этой теме. – trashgod

+0

Привет, trashgod - извините, я новичок в этом - вы предлагаете мне начать новый вопрос формируя значение {0}? И как мне пингировать - это просто использование @trashgod? – Elliot