我想在AChartEngine中将条形图与2个数据系列和折线图组合在一起,但我无法做到这一点。在AChartEngine演示中,我发现只有一个例子,它结合了单个系列条形图和折线图(组合温度)。
我想要的是什么: http://i.imgur.com/Jxq0BTV.jpg
如果我在组合XY图表的数据集中定义3个系列(2表示条形图,1表示折线图),如下所示:
ChartFactory.getCombinedXYChartView(ctx, dataset, renderer, new String[] { BarChart.TYPE, BarChart.TYPE, LineChart.TYPE });
...然后我得到了这个结果: http://i.imgur.com/71HAPo3.jpg
如果我定义3个系列和2个图表类型:
ChartFactory.getCombinedXYChartView(ctx, dataset, renderer, new String[] { BarChart.TYPE, LineChart.TYPE });
...然后我得到一个例外:
java.lang.IllegalArgumentException: Dataset, renderer and types should be not null and the datasets series count should be equal to the types length
at org.achartengine.ChartFactory.getCombinedXYChartView(ChartFactory.java:202)
我是否误解了某些内容,或者AChartEngine是否完全不支持多系列条形图和折线图?
答案 0 :(得分:2)
请参阅:http://tapt007.hubpages.com/hub/Android-Combined-Charts希望它对您有所帮助。
答案 1 :(得分:0)
从AChartEngine演示中的“组合温度”示例开始,您可以保持LineChart
和BarChart
的方式,并添加新的BarChart
。两个条形图的x轴值应略有不同,例如它们不重叠。例如,如果x
值应为1
,则第一个条形图可以在0.75
添加值,在1.25
添加第二个值。这样它们将被单独渲染。
另外,设置主渲染器栏间距:renderer.setBarSpacing(1);
表示同一系列中2个项目之间的空格等于一个栏的宽度。