站内搜索: 请输入搜索关键词

当前页面: 开发资料首页JSP 专题请问jfreechart图表中饼图可以显示数字吗?而不是百分比.

请问jfreechart图表中饼图可以显示数字吗?而不是百分比.

摘要: 请问jfreechart图表中饼图可以显示数字吗?而不是百分比.


请问jfreechart图表中饼图可以显示数字吗?而不是百分比.柱状图,曲线图数据都可以显示数字.


可以的

PieSectionLabelGenerator generator = new StandardPieItemLabelGenerator(
"{2}", new DecimalFormat("0"), new DecimalFormat("0.00%"));

其中{0}{1}{2}分别代表不同的现实方式,可以同时显示出来,具体各自表示什么忘记了。


plot.setLegendLabelGenerator(new StandardPieItemLabelGenerator("{0});可以!


顶!!


plot.setLegendLabelGenerator(new StandardPieItemLabelGenerator("{0});可以!

这个行不通啊.


他一般不设置格式的时候默认就显示的是每一块的数值哦;
我在网上给你找了一个例子:
package tracy.test;


import java.io.FileNotFoundException;

import java.io.FileOutputStream;

import java.io.IOException;


import org.jfree.chart.ChartFactory;

import org.jfree.chart.ChartUtilities;

import org.jfree.chart.JFreeChart;

import org.jfree.data.general.DefaultPieDataset;


public class PieChart {


public void drawToFile(){

//设置数据集

DefaultPieDataset dataset = new DefaultPieDataset();

dataset.setValue("冰箱", 1800);

dataset.setValue("电视", 1600);

dataset.setValue("空调", 3300);

dataset.setValue("洗衣机", 2000);

dataset.setValue("DVD", 400);

//通过工厂类生成JFreeChart对象

JFreeChart chart = ChartFactory.createPieChart3D("家电投资比例示意图", dataset, true, false, false);

//写图表对象到文件

FileOutputStream fos_jpg = null;

try {

fos_jpg = new FileOutputStream("D:pi.jpg");

ChartUtilities.writeChartAsJPEG(fos_jpg,100,chart,400,300,null);

} catch (FileNotFoundException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

} finally {

try {

fos_jpg.close();

} catch (Exception e) {}

}

}

}
它生成的有数字的。
jfreechart的各个版本有些函数名字变了,搂主注意版本哈!



楼主,我测试通过的代码:
import java.io.FileNotFoundException;

import java.io.FileOutputStream;

import java.io.IOException;


import org.jfree.chart.ChartFactory;

import org.jfree.chart.ChartUtilities;

import org.jfree.chart.JFreeChart;

import org.jfree.data.general.DefaultPieDataset;


public class PieChart {


public void drawToFile(){

//设置数据集

DefaultPieDataset dataset = new DefaultPieDataset();

dataset.setValue("冰箱", 1800);

dataset.setValue("电视", 1600);

dataset.setValue("空调", 3300);

dataset.setValue("洗衣机", 2000);

dataset.setValue("DVD", 400);

//通过工厂类生成JFreeChart对象

JFreeChart chart = ChartFactory.createPieChart3D("家电投资比例示意图", dataset, true, false, false);

//写图表对象到文件

FileOutputStream fos_jpg = null;

try {

fos_jpg = new FileOutputStream("D:pi.jpg");

ChartUtilities.writeChartAsJPEG(fos_jpg,100,chart,400,300,null);

}
catch (FileNotFoundException e)
{

e.printStackTrace();

}
catch (IOException e)
{

e.printStackTrace();

}
finally
{

try
{

fos_jpg.close();

}
catch (Exception e)
{
e.printStackTrace();
}

}

}

public static void main(String[] args)
{

PieChart demo = new PieChart();
demo.drawToFile();
}
}
我的版本是jfreechart-1.0.1,和jcommon-1.0.4;


↑返回目录
前一篇: 为什么我的tomcat连接池不能用localhost连接本地数据库呢?
后一篇: 咋的,怎么回事啊???