关闭JFreeChart条形图中的空白区域
我正在使用JFreeChart
并希望显示玩家得分的条形图,其中y轴上的得分和x轴上的玩家游戏。
例如
String[] {Player name, score, game number} Player 1, 10 , 1 Player 1, 12 , 2 Player 1, 15 , 3 Player 2, 11 , 1 Player 3, 18 , 1
因为玩家不必玩相同数量的游戏,所以当创建数据集时,这会导致大量空白,因为它试图为玩家2和3游戏2和3绘制条形图。
data.addValue(score, game number, player name);
输出:(数字不匹配,这只是我敲了一个快速测试)
任何人都可以帮我解决这个空白区域的问题吗? 从理论上讲,玩家1可以继续玩2个玩家,玩家2和玩家只玩3个,所以看起来很荒谬! 我是JFreeChart的新手,所以可能有一个明显的解决方案!
预先感谢您的帮助。
首先仔细看看图片
这是一些解释数字。
- setLowerMargin(双边距)。
- setUpperMargin(双边距)。
- setCategoryMargin(双边距)。
- setItemMargin(双边距)。
以下是如何使用图表中的方法
CategoryPlot p = chart.getCategoryPlot(); CategoryAxis axis = p.getDomainAxis(); axis.setLowerMargin(0.1); axis.setUpperMargin(0.1); axis.setCategoryMargin(0.1); BarRenderer renderer = (BarRenderer) p.getRenderer(); renderer.setItemMargin(0.1);
您可以将值设置在0.0到1.0之间(示例0.1表示10%)
希望这可以帮助
(更新后你的评论)在这种情况下你应该使用分层条形图