jfreechart饼图设置Label为百分比的方法 保留2位小数
时间: 2023-10-13 15:19:28 浏览: 182
你可以使用 `StandardPieSectionLabelGenerator` 类来设置饼图的标签为百分比,并保留2位小数。具体代码如下:
```java
// 创建饼图数据集
DefaultPieDataset dataset = new DefaultPieDataset();
dataset.setValue("A", 30);
dataset.setValue("B", 40);
dataset.setValue("C", 20);
dataset.setValue("D", 10);
// 创建饼图
JFreeChart chart = ChartFactory.createPieChart("Pie Chart", dataset);
// 设置饼图标签为百分比
PiePlot plot = (PiePlot) chart.getPlot();
plot.setLabelGenerator(new StandardPieSectionLabelGenerator("{0}: {1}({2})", NumberFormat.getNumberInstance(), new DecimalFormat("0.00%")));
// 显示饼图
ChartFrame frame = new ChartFrame("Pie Chart", chart);
frame.pack();
frame.setVisible(true);
```
其中,`StandardPieSectionLabelGenerator` 的第一个参数为标签格式,`{0}` 表示饼图中的每个部分的名称,`{1}` 表示该部分所占的数值,`{2}` 表示该部分所占的百分比。第二个参数为数值格式,这里使用了 `NumberFormat.getNumberInstance()`,即使用默认数值格式。第三个参数为百分比格式,这里使用了 `new DecimalFormat("0.00%")`,即保留2位小数的百分比格式。
阅读全文