JFreeChart 图表生成实例

上传人:碎****木 文档编号:220861831 上传时间:2021-12-09 格式:DOCX 页数:9 大小:36.97KB
返回 下载 相关 举报
JFreeChart 图表生成实例_第1页
第1页 / 共9页
JFreeChart 图表生成实例_第2页
第2页 / 共9页
JFreeChart 图表生成实例_第3页
第3页 / 共9页
亲,该文档总共9页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《JFreeChart 图表生成实例》由会员分享,可在线阅读,更多相关《JFreeChart 图表生成实例(9页珍藏版)》请在金锄头文库上搜索。

1、JFreeChart 图表生成实例(饼图、柱状图、折线图、时序图)importjava.awt.BasicStroke; importjava.awt.Color;importjava.io.FileOutputStream; importjava.io.IOException; importjava.text.DateFormat; importjava.text.SimpleDateFormat;importjavax.servlet.ServletException; importjavax.servlet.ServletRequest; importjavax.servlet.Serv

2、letResponse; importjavax.servlet. . Servlet;importorg.jfree.data.category.CategoryDataset; importorg.jfree.data.category.DefaultCategoryDataset; importorg.jfree.data.general.DefaultPieDataset; importorg.jfree.data.time.Day; importorg.jfree.data.time.TimeSeries; importorg.jfree.data.time.TimeSeriesCo

3、llection; importorg.jfree.data.xy.XYDataset; importorg.jfree.chart.*; importorg.jfree.chart.axis.CategoryAxis; importorg.jfree.chart.axis.DateAxis; importorg.jfree.chart.axis.DateTickUnit; importorg.jfree.chart.axis.DateTickUnitType; importorg.jfree.chart.axis.ValueAxis; importorg.jfree.chart.plot.C

4、ategoryPlot; importorg.jfree.chart.plot.PiePlot; importorg.jfree.chart.plot.PlotOrientation; importorg.jfree.chart.plot.XYPlot;importorg.jfree.chart.renderer.category.LineAndShapeRenderer; importorg.jfree.chart.servlet.ServletUtilities; importorg.jfree.chart.title.TextTitle; importcom.lowagie.text.F

5、ont;import demo.BarChart3DDemo1;/* Servlet implementation class ChartDemoServlet*/public class ChartDemoServlet extends Servlet private static final long serialVersionUID = 1L; publicChartDemoServlet() super();/ TODO Auto-generated constructor stubpublic void service(ServletRequest request, ServletR

6、esponse response) throws ServletException, IOExceptionresponse.setContentType(“image/jpeg“); DefaultPieDataset data = getDataSet(); CategoryDataset dataset = getDataSet2(); DefaultCategoryDatasetlinedataset = createDataset();/JFreeChart chart = ChartFactory.createPieChart3D(“水果产量图“, data, true, fals

7、e, false);/*JFreeChart chart = ChartFactory.createBarChart3D(水“ 果产量图“, / 图表标题水“ 果“, / 名目轴的显示标签产“ 量“, / 数值轴的显示标签dataset, /数据集PlotOrientation.VERTICAL, / 图表方向:水平、垂直true, / 是否显示图例(对于简洁的柱状图必需是 false)false, / 是否生成工具false / 是否生成 URL 链接);*/JFreeChart chart = ChartFactory.createLineChart( “折线图“, / 图表标题“时间“,

8、 / 横轴显示标签“销售额(百万)“, / 纵轴显示标签linedataset, / 数据集PlotOrientation.VERTICAL, / 图表方向:水平、垂直true, /是否显示图例标识(对于简洁的柱状图必需是 false) true, /是否生成工具false /是否生成 URL 链接);/*JFreeChart chart=ChartFactory.createTimeSeriesChart( “编程词典全国销量统计“, “销售月份“, “销量份“, createtimedata(), false, false, false);*/* jfreechart1.0.13生成的图片

9、中,中文都以方框形式显示,中文乱码解决如下包括:饼图、柱状图、时序图、折线图。*/*设置饼图相关属性*/*PiePlotpieplot = (PiePlot) chart.getPlot();/猎取饼图区域对象。pieplot.setLabelFont(new java.awt.Font(“宋体“,0,12); pieplot.setNoDataMessage(“很多据显示“); /没有数据的时候显示的内容pieplot.setCircular(false);pieplot.setLabelGap(0.02D); TextTitletxtTitle = null; txtTitle = cha

10、rt.getTitle();java.awt.Font font = new java.awt.Font(“宋体“, Font.BOLD, 16); txtTitle.setFont(font);/解决标题中文乱码chart.getLegend().setItemFont(font); chart.setBackgroundPaint(new Color(232,232,232);/设定背景pieplot.setBackgroundPaint(Color.white); /设定图表数据显示局部背风光*/*设置柱状图、折线图相关属性*/CategoryPlotcatplot=chart.getC

11、ategoryPlot(); /猎取柱状图、折线图区域对象。CategoryAxisdomainAxis=catplot.getDomainAxis(); catplot.setNoDataMessage(“很多据显示“);/没有数据的时候显示的内容/列表标题TextTitletxtTitle = null; txtTitle = chart.getTitle();txtTitle.setFont(new java.awt.Font(“黑体“,Font.BOLD,14);/水平底部列表domainAxis.setLabelFont(new java.awt.Font(“黑体“,Font.BOL

12、D,14);/水平底部标题domainAxis.setTickLabelFont(new java.awt.Font(“宋体“,Font.BOLD,12);/垂直标题ValueAxisrangeAxis=catplot.getRangeAxis();/猎取柱状rangeAxis.setLabelFont(new java.awt.Font(“黑体“,Font.BOLD,15); chart.getLegend().setItemFont(new java.awt.Font(“黑体“, Font.BOLD, 15);/获得 renderer LineAndShapeRendererlineAnd

13、ShapeRenderer=(LineAndShapeRenderer)catplot.getRenderer(); lineAndShapeRenderer.setShapesVisible(true); /series 点即数据点可见/*lineAndShapeRenderer.setSeriesStroke(0, new BasicStroke(2.0F, 1, 1, 1.0F, new float 10F, 6F, 0.0F); /这里是虚线,默认是直线*/*设置时序图相关属性*/*XYPlotxyplot = (XYPlot) chart.getPlot();/猎取时序图区域对象。/

14、列表标题TextTitletxtTitle = null; txtTitle = chart.getTitle();txtTitle.setFont(new java.awt.Font(“黑体“,Font.BOLD,15);/纵轴字体xyplot.getRangeAxis().setLabelFont(new java.awt.Font(“宋体“, Font.BOLD, 12);/横轴框里的标题字体:显示图例/chart.getLegend().setItemFont(new java.awt.Font(“宋体“, Font.ITALIC, 12);/横轴列表字体xyplot.getDomai

15、nAxis().setTickLabelFont(new java.awt.Font(“新宋体“, 1, 12);/横轴小标题字体xyplot.getDomainAxis().setLabelFont(new java.awt.Font(“新宋体“, 1, 12); chart.setBackgroundPaint(new Color(252,175,134); /设置背风光xyplot.setDomainGridlinesVisible(false); /设置网格不显示/猎取时间轴对象DateAxisdateAxis = (DateAxis) xyplot.getDomainAxis();/dateAxis

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 教育/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号