JFReeChart XYPlot可以改变图例中的形状

时间:2012-12-06 09:40:54

标签: jfreechart

lt.setPosition(RectangleEdge.BOTTOM);
lt.setItemFont(old);
// get the range axis and add the $ symbol for the values
NumberAxis na = (NumberAxis) plot.getRangeAxis();       
// set font
na.setLabelFont(fAxisFont); 
na.setTickLabelFont(fAxisFont);
na.setAutoRange(true);

以上是我的代码片段。任何人都可以告诉如何更改图例中的形状

2 个答案:

答案 0 :(得分:2)

我正在使用以下解决方法:

StandardXYItemRenderer renderer = new StandardXYItemRenderer() {
    private static final long serialVersionUID = 0L;

    @Override
    public LegendItem getLegendItem(int datasetIndex, int series) {
        LegendItem legend = super.getLegendItem(datasetIndex,
                series);
        return new LegendItem(legend.getLabel(),
                legend.getDescription(), legend.getToolTipText(),
                legend.getURLText(), Plot.DEFAULT_LEGEND_ITEM_BOX,
                legend.getFillPaint());
    }
};

...

plot.setRenderer(renderer);

结果: enter image description here

答案 1 :(得分:1)

LegendItem从相应的系列中推断出Shape,可以按照here更改。此related示例显示了在外部组件中呈现LegendItem的一种方法。

image