我正在尝试使用以下代码将图例项目形状设置为矩形。但我总是在矩形周围看到黑色边框。我该如何删除它。我尝试了一些设置,例如将图例边框设置为零,将绘图setOutlineVisible设置为false,但没有设置
plot.setLegendItemShape(new Rectangle(8,6));
Jaspersoft Studio中使用的完整自定义程序代码
public class PieCustomizer extends JRAbstractChartCustomizer{
public void customize(JFreeChart chart, JRChart jasperChart){
PiePlot plot = (PiePlot) chart.getPlot();
plot.setShadowXOffset(0);
plot.setShadowYOffset(0);
plot.setLegendItemShape(new Rectangle(8,6));
LegendTitle legend = chart.getLegend();
legend.setFrame(BlockBorder.NONE);
legend.setPosition(RectangleEdge.LEFT);
legend.setVerticalAlignment(VerticalAlignment.BOTTOM);
plot.setSectionOutlinesVisible(false);
plot.setDirection(Rotation.ANTICLOCKWISE);
plot.setLabelLinkPaint(new Color(103,103,103));
plot.setLabelOutlinePaint(Color.BLUE);
plot.setLabelShadowPaint(Color.WHITE);
}
}
Screenshot (can't paste inline image due to insufficient reputation points)
答案 0 :(得分:3)
使用sectionOutlinePaint
和sectionOutlineStroke
绘制矩形。
如果您希望使它们不可见,您可以为数据集中的所有键设置以下内容:
plot.setSectionOutlinePaint(key, Color.WHITE);
plot.setSectionOutlineStroke(key ,new BasicStroke(0f));
如果要删除图例框周围的边框,则应设置LegendTitle
对象的边框:
legend.setBorder(0, 0, 0, 0);