如何在列饼图显示传奇?(How to display legend for Pie Chart in

2019-06-21 01:33发布

我有很多路段一个饼图,传说这个饼图呈现为一行。 如何使传说的那样两列?

Answer 1:

该方法getLegendItem()看到这里 ,提供了所需渲染任何图例项目的所有信息Container您选择。 GridLayout(0, 2)将安排它们在两列中任何数量的行。 为了抑制现有的传说,设置legendfalse ,当你打电话给你的图表厂; 该项目将仍然可用,如建议在这里 。

附录:基于PieChartDemo1 ,该片段使用getLegendItems().iterator这的变化ColorIcon

public static JPanel createDemoPanel() {
    JPanel panel = new JPanel();
    JFreeChart chart = createChart(createDataset());
    panel.add(new ChartPanel(chart));
    panel.add(createLegendPanel((PiePlot) chart.getPlot()));
    return panel;
}

private static JPanel createLegendPanel(PiePlot plot) {
    JPanel panel = new JPanel(new GridLayout(0, 2, 5, 5));
    Iterator iterator = plot.getLegendItems().iterator();
    while (iterator.hasNext()) {
        LegendItem item = (LegendItem) iterator.next();
        JLabel label = new JLabel(item.getLabel());
        label.setIcon(new ColorIcon(8, item.getFillPaint()));
        panel.add(label);
    }
    return panel;
}


Answer 2:

看看这个线程: 链接

好像你正在寻找的东西。 如果没有,请发表你需要你有什么一些更多的信息或截图和内容。



文章来源: How to display legend for Pie Chart in columns?