Jfreechart: перекрытие столбчатой диаграммы

#jfreechart

#jfreechart

Вопрос:

Я пытаюсь создать столбчатую диаграмму с двумя осями Y. Проблема в том, что два набора данных перекрываются, вот так: введите описание изображения здесь

Я хочу что-то вроде этого: (но с правой осью Y, сопоставленной со вторым набором данных)

введите описание изображения здесь

Я хотел бы решить эту проблему, не используя обходной путь, показанный в демонстрационных версиях (редактировать: в частности, JFreeChart: Dual Axis Demo 5), где вы добавляете нулевые значения в наборы данных, чтобы сдвинуть столбцы в нужное положение. Это решение было бы очень сложно реализовать с учетом того, как я обрабатываю данные в наборах данных.

Кто-нибудь может дать мне несколько советов?

Комментарии:

1. Как придать столбцам этот металлический и блестящий вид?

Ответ №1:

На случай, если у кого-то возникнет такая же проблема, вот одно из решений: http://www.java2s.com/Code/Java/Chart/JFreeChartDualAxisDemo5.htm

По сути, для каждой созданной вами серии добавляйте нулевое значение другой серии. Пример:

В серии 1:

 dataset.addValue(1.0, series1, category1);
dataset.addValue(4.0, series1, category2);
dataset.addValue(3.0, series1, category3);
dataset.addValue(5.0, series1, category4);

dataset.addValue(null, series2, category1);
dataset.addValue(null, series2, category2);
dataset.addValue(null, series2, category3);
dataset.addValue(null, series2, category4);
  

В серии 2:

 dataset.addValue(null, series1, category1);
dataset.addValue(null, series1, category2);
dataset.addValue(null, series1, category3);
dataset.addValue(null, series1, category4);

dataset.addValue(75.0, series2, category1);
dataset.addValue(87.0, series2, category2);
dataset.addValue(96.0, series2, category3);
dataset.addValue(68.0, series2, category4);