0
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);

The above is my code snippet.Can anyone tell how to to chang shapes inside legends

nisarg parekh
  • 413
  • 4
  • 23
KingMaker
  • 199
  • 6

2 Answers2

2

I'm using the following workaround:

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);

Result: enter image description here

Tiago
  • 2,871
  • 4
  • 23
  • 39
1

A LegendItem infers its Shape from the corresponding series, which can be changed as shown here. This related example shows one way to render a LegendItem in an external component.

image

Community
  • 1
  • 1
trashgod
  • 203,806
  • 29
  • 246
  • 1,045