java中图例的显示图标显示 jFrameChar

/**
* 图表测试
*
* @time 12:38:27 PM
* @author retacn yue
* @Email zhenhuayue@sina.com
*/
public class TestChart {


public static void main(String[] args) throws IOException {


// pieTest();
barTest();
}


/**
* 饼状图
*
* @param dataset
*
* @throws IOException
*/
public static void pieTest() throws IOException {
DefaultPieDataset dataset = new DefaultPieDataset();
dataset.setValue("吃饭", 0.5);
dataset.setValue("睡觉", 0.4);
dataset.setValue("coder", 0.12);
dataset.setValue("打弹弹", 0.08);
dataset.setValue("看电视", 0.48);


// 三维
// JFreeChart chart = ChartFactory.createPieChart3D("活动点用你每天的时间比",
// dataset, true, true, true);
// 二维
JFreeChart chart = ChartFactory.createPieChart("活动点用你每天的时间比", dataset, true, true, true);


// 中文乱码问题
Font font = new Font("宋体", Font.BOLD, 20);
chart.getTitle().setFont(font);


// 描述条字体
chart.getLegend().setItemFont(font);


// 图形中的图标
PiePlot plot = (PiePlot) chart.getPlot();
plot.setLabelFont(font);
// 设置背景透明度
plot.setBackgroundAlpha(.5f);
// 前景透明
plot.setForegroundAlpha(0.5f);
// 设置开始角度
plot.setStartAngle(.6f);


// 设置分裂效果
plot.setExplodePercent("ibm", 0.1);


// 添加子标题
/*
* TextTitle textTitle1 = new TextTitle(); textTitle1.setText("测试标题一");
* TextTitle textTitle2 = new TextTitle(); textTitle2.setText("测试标题二");
* chart.getSubtitles().add(textTitle1);
* chart.getSubtitles().add(textTitle2);
*/
// 保存在文件中
File file = new File("e:/jfreechar_test/test.jpg");
ChartUtilities.saveChartAsJPEG(file, chart, 800, 400);
// 保存到流中
// FileOutputStream fos = new
// FileOutputStream("e:/jfreechar_test/test2.jpg");
// ChartUtilities.writeChartAsJPEG(fos, chart, 800, 600);
// fos.close();
}


/**
* 柱状图
*
* @throws IOException
*/
public static void barTest() throws IOException {
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.addValue(5000, "张三", "1月份");
dataset.addValue(6000, "张三", "2月份");
dataset.addValue(7000, "张三", "3月份");


dataset.addValue(1000, "李四", "1月份");
dataset.addValue(2000, "李四", "2月份");
dataset.addValue(3000, "李四", "3月份");


dataset.addValue(3000, "王五", "1月份");
dataset.addValue(4000, "王五", "2月份");
dataset.addValue(5000, "王五", "3月份");



JFreeChart chart = ChartFactory.createBarChart("季度工资表", "categoryAxis", "valueAxis", dataset, PlotOrientation.VERTICAL, true, true, true);


// 中文乱码问题
Font font = new Font("宋体", Font.BOLD, 20);
chart.getTitle().setFont(font);


chart.getLegend().setItemFont(font);


// 图形中的图标
CategoryPlot plot = (CategoryPlot) chart.getPlot();
//plot.get
// 设置背景透明度
// plot.setBackgroundAlpha(.5f);
// 前景透明
// plot.setForegroundAlpha(0.5f);


// 保存到流中
FileOutputStream fos = new FileOutputStream("e:/jfreechar_test/test2.jpg");
ChartUtilities.writeChartAsJPEG(fos, chart, 800, 600);
fos.close();


}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值