Jfreechart:条形图重叠

时间:2011-04-06 09:00:52

标签: jfreechart

我正在尝试制作一个带有两个Y轴的条形图。问题是两个数据集重叠,如下所示: enter image description here

我想要的是这样的:(但是正确的Y轴映射到第二个数据集)

enter image description here

我想解决这个问题而不使用演示中显示的解决方法(编辑:特别是JFreeChart:Dual Axis Demo 5),在这里您可以将空值添加到数据集中以将条形图转换为位置。使用我将数据处理成数据集的方式来实现这个解决方案非常复杂。

任何人都可以给我一些指示吗?

1 个答案:

答案 0 :(得分: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);