首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

JFreeChart简略例子加乱码解决(部分)

2012-11-23 
JFreeChart简单例子加乱码解决(部分)首先需要导入两个包:jcommon-1.0.17.jarjfreechart-1.0.14.jar如果你

JFreeChart简单例子加乱码解决(部分)

首先需要导入两个包:

jcommon-1.0.17.jar

jfreechart-1.0.14.jar

如果你手头没有需要到JFreeChart的网站上去下载地址如下:http://sourceforge.net/projects/jfreechart/files/

下载后可以找到以上两个包,有个包gnujaxp.jar加入后启动tomcat会报错,不知何解,下面是代码:

?

import java.awt.Color;import java.awt.Font;import java.io.FileOutputStream;import java.io.IOException;import java.util.Date;import org.jfree.chart.ChartFactory;import org.jfree.chart.ChartUtilities;import org.jfree.chart.JFreeChart;import org.jfree.chart.axis.CategoryAxis;import org.jfree.chart.axis.CategoryLabelPositions;import org.jfree.chart.axis.ValueAxis;import org.jfree.chart.plot.CategoryPlot;import org.jfree.chart.plot.PlotOrientation;import org.jfree.chart.title.TextTitle;import org.jfree.data.category.CategoryDataset;import org.jfree.data.category.DefaultCategoryDataset;import org.jfree.data.general.DefaultPieDataset;public class Test {public static void main(String[] args) {CategoryDataset dataset = getDataSet2();DefaultPieDataset data = getDataSet();JFreeChartchart1 = ChartFactory.createBarChart3D("城市水果产量图", //图表标题 "水果", //目录轴的显示标签 "产量", //数值周的显示标签 dataset,  PlotOrientation.VERTICAL,//图标方向:水平、垂直  true,//是否显示图例(对于简单的柱状图必须是false)  false,//是否生成工具 false);//是否生成URLJFreeChart chart2 = ChartFactory.createPieChart3D("水果产量", data, true, false, false);configFont(chart1);FileOutputStream fos_jpg = null;try {fos_jpg = new FileOutputStream("D:\\fruit.jpg");//生成的路径,请在这里查看图片ChartUtilities.writeChartAsPNG(fos_jpg, chart1, 400, 300, null);//chart1,chart2} catch (IOException e) {e.printStackTrace();}finally{try {fos_jpg.close();} catch (IOException e2) {e2.printStackTrace();}}}    private static void configFont(JFreeChart chart) {        // 配置字        Font xfont = new Font("宋体", Font.PLAIN, 12);// X轴        Font yfont = new Font("宋体", Font.PLAIN, 12);// Y轴        Font kfont = new Font("宋体", Font.PLAIN, 12);// 底部        Font titleFont = new Font("隶书", Font.BOLD, 25); // 图片标题        CategoryPlot plot = chart.getCategoryPlot();// 图形的绘制结构对象        // 图片标题        chart.setTitle(new TextTitle(chart.getTitle().getText(), titleFont));        // 底部        chart.getLegend().setItemFont(kfont);        // X 轴        CategoryAxis domainAxis = plot.getDomainAxis();        domainAxis.setLabelFont(xfont);// 轴标题        domainAxis.setTickLabelFont(xfont);// 轴数值        domainAxis.setTickLabelPaint(Color.BLUE); // 字体颜色        domainAxis.setCategoryLabelPositions(CategoryLabelPositions.UP_45); // 横轴上的label斜显示        // Y 轴        ValueAxis rangeAxis = plot.getRangeAxis();        rangeAxis.setLabelFont(yfont);        rangeAxis.setLabelPaint(Color.BLUE); // 字体颜色        rangeAxis.setTickLabelFont(yfont);    }private static DefaultPieDataset getDataSet(){DefaultPieDataset dataset = new DefaultPieDataset();dataset.setValue("苹果",100);dataset.setValue("梨子",200);dataset.setValue("香蕉",300);dataset.setValue("荔枝",400);dataset.setValue("葡萄",500);return dataset;}private static CategoryDataset getDataSet2(){DefaultCategoryDataset dataset = new DefaultCategoryDataset();dataset.addValue(100, "北京", "苹果");dataset.addValue(100, "上海", "苹果");dataset.addValue(100, "广州", "苹果");dataset.addValue(200, "北京", "梨子");dataset.addValue(200, "上海", "梨子");dataset.addValue(200, "广州", "梨子");dataset.addValue(300, "北京", "葡萄");dataset.addValue(300, "上海", "葡萄");dataset.addValue(300, "广州", "葡萄");dataset.addValue(400, "北京", "香蕉");dataset.addValue(400, "上海", "香蕉");dataset.addValue(400, "广州", "香蕉");dataset.addValue(500, "北京", "荔枝");dataset.addValue(500, "上海", "荔枝");dataset.addValue(500, "广州", "荔枝");return dataset;}}
?

热点排行