现在,javaEE学完了,做个小项目练习练习,期中有一块 报表,想生成 柱状图 或者饼状图 或者折线图。
学 c/s 的时候在 面板上生成的,但在jsp页面上做不出来了,先谢谢大家。
------解决方案--------------------
用jfreechart插件,开源的,你自己写?没多大意义,除非你要炼身手,呵
------解决方案--------------------
jfreechart不错,还可以做一些温度计啦仪表盘啦,好多好可视化的图形,最重要的是免费的,使用起来比较简单
------解决方案--------------------
EN ,JFREECHART,很好,很简单!
------解决方案--------------------
http://blog.csdn.net/Ami121/category/394379.aspx
一些jfreechart的例子
jfreechat插件对于画web是个不错的选择
当然你也可以做成applet形式直接嵌入到jsp中
------解决方案--------------------
------解决方案--------------------
我这里有现成的例子,需要的话,就把邮箱告诉我,给你发过去
------解决方案--------------------
又多了解了一个插件Jfreechart
------解决方案--------------------
我给你一个饼图和一个折线图的例子,你看看!
饼图的
- Java code
class BChart{public static void main(String[] args){ PieDataset dataset = getDataSet();//设置数据源 JFreeChart chart = ChartFactory.createPieChart3D( "时延分布统计图", // chart title dataset,// data true,// include legend true, false ); PiePlot3D plot=(PiePlot3D)chart.getPlot(); // 图片中显示百分比:默认方式 //plot.setLabelGenerator(new StandardPieSectionLabelGenerator(StandardPieToolTipGenerator.DEFAULT_TOOLTIP_FORMAT)); // 图片中显示百分比:自定义方式,{0} 表示选项, {1} 表示数值, {2} 表示所占比例 ,小数点后两位 plot.setLabelGenerator(new StandardPieSectionLabelGenerator("{0}={1}({2})", NumberFormat.getNumberInstance(), new DecimalFormat("0.00%"))); // 图例显示百分比:自定义方式, {0} 表示选项, {1} 表示数值, {2} 表示所占比例 plot.setLegendLabelGenerator(new StandardPieSectionLabelGenerator("{0}={1}({2})")); // 设置背景色为白色 chart.setBackgroundPaint(Color.white); // 指定图片的透明度(0.0-1.0) plot.setForegroundAlpha(1.0f); // 指定显示的饼图上圆形(false)还椭圆形(true) plot.setCircular(true); // 设置图标题的字体 Font font = new Font(" 黑体",Font.CENTER_BASELINE,20); TextTitle title = new TextTitle(" 时延分布统计图"); title.setFont(font); chart.setTitle(title); FileOutputStream fos_jpg = null; try { fos_jpg=new FileOutputStream("D:\\时延分布统计图.jpg"); ChartUtilities.writeChartAsJPEG(fos_jpg,100,chart,640,480,null); fos_jpg.close(); } catch (Exception e) { } } private static PieDataset getDataSet()//数据源构造 { DefaultPieDataset dataset = new DefaultPieDataset(); dataset.setValue("login.jsp",50); dataset.setValue("reg.jsp",60); return dataset; } }
------解决方案--------------------
折线图的
- Java code
class ZChart{public static void main(String[] args){JFreeChart chart = ChartFactory.createXYLineChart("固定uri时延分布图", "历次访问点", "时延/ms", createDataSet(special), PlotOrientation.VERTICAL, true, true, false); FileOutputStream fos_jpg = null; try { fos_jpg=new FileOutputStream("D:\\mao.jpg"); ChartUtilities.writeChartAsJPEG(fos_jpg,100,chart,640,480,null); fos_jpg.close(); } catch (Exception e) { } } private static XYSeriesCollection createDataSet() {//数据源构造方法 XYSeriesCollection seriesCollection = new XYSeriesCollection(); XYSeries series1 = new XYSeries("login.jsp"); seriesCollection.addSeries(series1); series1.add(1, 75); series1.add(2, 41); series1.add(3, 39); series1.add(4, 33); series1.add(5, 25); series1.add(6, 36); seriesCollection.addSeries(series1); return seriesCollection; }}