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

上記は私のコード スニペットです。誰でも凡例内の形状を変更する方法を教えてもらえますか

4

2 に答える 2

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

結果: ここに画像の説明を入力

于 2013-01-09T19:31:05.507 に答える
1

Aは対応するシリーズからLegendItem推測します。これは、ここに示すように変更できます。この関連する例は、外部コンポーネントでをレンダリングする 1 つの方法を示しています。ShapeLegendItem

画像

于 2012-12-06T10:54:22.167 に答える