基本上我对以下文章有一个非常类似的问题:http://www.jfree.org/phpBB2/viewtopic.php?t=24713
除了版本的差异,我的标签结果非常像第三个饼图,我更喜欢让它们像第一个图表一样(每行更多的空间 - 更宽的线条),这样他们就不必这么快就换到下一行。我已经尝试了所有我能想到的增加标签尺寸的东西,但似乎没有任何效果。
我的主要思想是调整标签开始写入的位置,并通过大量调试源,我能够扩展框的大小而不是实际的字符串。如果没有通过某种配置编辑源代码,我找不到办法,即便如此,我也无法正确调整文本,只能调整框。而且需要花费很多精力,代码并不是两者都在同一个地方。
有关如何设置饼图的任何建议,以便上面的文章中所示的标签更像第一个图表而不是最后一个图表。我做了帖子中的建议:
plot.setInteriorGap(0.02);
plot.setMaximumLabelWidth(0.20);
plot.setLabelLinkStyle(PieLabelLinkStyle.CUBIC_CURVE);
但它并没有真正的区别。最新版本中默认为无CUBIC_CURVE。 setInteriorGap确实略有改善,但它很小。另一条线没有做任何事情。
真正令人不安的是生成的图表左侧和右侧有多少空白区域。能以某种方式使用那个空间会很棒。
答案 0 :(得分:0)
我不确定第一个问题。但是,我对如何处理剩余的空白有一些想法。
如果要将图表转换为图像,可以尝试通过以下方法修剪周围的空白区域:
BufferedImage chartImage = chart.createBufferedImage(width, height);
chartImage = chartImage.getSubImage(howMuchToTrimOnLeft, howMuchtoTrimOnTop, width - howMuchToTrimOnLeft - howMuchToTrimOnRight, height - howMuchtoTrimOnTop - howMuchToTrimOnBottom);
生成的chartImage
将包含剪裁版本。确保使初始宽度和高度值大于您希望图表占据的区域的尺寸,然后将其修剪为大小。