JFreechart jfreechart 没人用了


JFreechart jfreechart 没人用了
jfreechart java报表开发框架
google brows 支持迅雷 signed.applets.codebase_principal_support值改为true
import java.awt.BasicStroke;import java.awt.Color;import java.awt.Font;import java.awt.RenderingHints;import java.text.DecimalFormat;import java.text.NumberFormat;import org.jfree.chart.ChartFactory;import org.jfree.chart.ChartFrame;import org.jfree.chart.JFreeChart;importorg.jfree.chart.labels.StandardPieSectionLabelGenerator;importorg.jfree.chart.labels.StandardPieToolTipGenerator;import org.jfree.chart.plot.PiePlot;import org.jfree.chart.plot.PiePlot3D;import org.jfree.chart.urls.StandardPieURLGenerator;import org.jfree.data.general.DefaultPieDataset;public class PieChartFrmTest {public static void main(String[] args){ createPieChart();}public static void createPieChart() { JFreeChart pieChart =ChartFactory.createPieChart3D("2010中国电子商务网站市场份额统计报告", getDataSet(),true, true, false); // 设置Title的字体(有些版本会出现乱码) pieChart.getTitle().setFont((new Font("宋体",Font.CENTER_BASELINE, 20))); // 背景色pieChart.setBackgroundPaint(Color.white); //RenderingHints做文字渲染参数的修改,VALUE_TEXT_ANTIALIAS_OFF表示将文字的抗锯齿关闭.pieChart.getRenderingHints().put(RenderingHints.KEY_TEXT_ANTIALIASING,RenderingHints.VALUE_TEXT_ANTIALIAS_OFF); // 设置图例说明Legend上的文字(//设置底部的字体) pieChart.getLegend().setItemFont(newFont("宋体", Font.CENTER_BASELINE, 15)); // 取得饼图的绘图(plot)对象 PiePlot3D piePlot = (PiePlot3D)pieChart.getPlot(); setBase(piePlot); setSection(piePlot); setLabel(piePlot); setNoDataMessage(piePlot); setNullAndZeroValue(piePlot); // 将饼图显示在图像界面上 ChartFrame frame = newChartFrame("2010中国电子商务网站市场份额统计", pieChart); frame.pack(); frame.setVisible(true);}// 对绘图对象的基本设置public static void setBase(PiePlot piePlot){piePlot.setBaseSectionOutlinePaint(Color.BLACK);// 图形边框颜色 piePlot.setBaseSectionOutlineStroke(newBasicStroke(0.1f));// 图形边框粗细 piePlot.setForegroundAlpha(0.65f); //指定图片的透明度(0.0-1.0) piePlot.setCircular(false);//设置饼图为正圆还是椭圆,默认为正圆(true) piePlot.setStartAngle(75);// 设置第一个饼块section 的开始位置,默认是12点钟方向 piePlot.setToolTipGenerator(newStandardPieToolTipGenerator()); // 设置鼠标悬停提示 piePlot.setExplodePercent("淘宝网", 0.1D);//设置突出显示的数据块 piePlot.setURLGenerator(newStandardPieURLGenerator());}// 创建饼图数据对象public static DefaultPieDataset getDataSet(){ DefaultPieDataset pieDataset = newDefaultPieDataset(); pieDataset.setValue("淘宝网", 40.5); pieDataset.setValue("拍拍网", 14.4); pieDataset.setValue("当当网", 13.9); pieDataset.setValue("凡客诚品", 15.0); pieDataset.setValue("eBay", 8.9); pieDataset.setValue("其它", 10.6); return pieDataset;}// 设置扇区饼颜色public static void setSection(PiePlotpieplot) { // 如果不设置,它会自己设置 // pieplot.setSectionPaint("淘宝网", newColor(160, 160, 255)); pieplot.setExplodePercent("eBay", 0.2D);//设置扇区分离显示 pieplot.setSectionOutlinesVisible(false);//设置扇区边框不可见}// 对饼图标签的设置public static void setLabel(PiePlot pieplot){ // 设置扇区标签显示格式:自定义方式,{0} 表示选项, {1} 表示数值, {2}表示所占比,小数点后一位 pieplot.setLabelGenerator(newStandardPieSectionLabelGenerator("{0}:{2}({1})",NumberFormat.getNumberInstance(), newDecimalFormat("0.0%"))); // 设置扇区标签颜色 pieplot.setLabelBackgroundPaint(newColor(220, 220, 220)); pieplot.setLabelFont((new Font("宋体",Font.PLAIN, 12)));}// 无数据的处理public static void setNoDataMessage(PiePlotpieplot) { // 设置没有数据时显示的信息 pieplot.setNoDataMessage("无数据"); // 设置没有数据时显示的信息的字体 pieplot.setNoDataMessageFont(new Font("宋体",Font.BOLD, 14)); // 设置没有数据时显示的信息的颜色pieplot.setNoDataMessagePaint(Color.red);}// 设置是否忽略0和null值public static voidsetNullAndZeroValue(PiePlot piePlot) { piePlot.setIgnoreNullValues(true); piePlot.setIgnoreZeroValues(true);}}--------------------------------------------------------------------------------------------------import java.awt.Color;import java.awt.Font;import java.io.File;import java.io.FileOutputStream;import java.text.DecimalFormat;import java.text.NumberFormat;import org.jfree.chart.ChartFactory;import org.jfree.chart.ChartUtilities;import org.jfree.chart.JFreeChart;importorg.jfree.chart.labels.StandardPieSectionLabelGenerator;import org.jfree.chart.plot.PiePlot3D;import org.jfree.data.general.DefaultPieDataset;import org.jfree.data.general.PieDataset;public class PieChartImgTest {private static final String CHART_PATH ="E:/jfreechart/";public static void main(String[] args){ PieChartImgTest pieChart = newPieChartImgTest(); pieChart.makePieChart();}public void makePieChart() { String[] keys = { "淘宝网", "拍拍网", "凡客诚品","当当网", "eBay", "其它" }; double[] data = { 40.2, 14.1, 13.5, 15.8,8.2, 9.8 };createValidityComparePimChar(getPieDataSet(keys, data),"2010中国电子商务网站市场份额统计报告", "pieChart.png", keys);}public PieDataset getPieDataSet(String[]keys, double[] data) { if (keys != null&& data != null) { if (keys.length ==data.length) { DefaultPieDatasetdataset = new DefaultPieDataset(); for (int i = 0; i< keys.length; i++) { dataset.setValue(keys[i], data[i]); } return dataset; } } return null;}public StringcreateValidityComparePimChar(PieDataset dataset, String chartTitle,String charName, String[] pieKeys) { // 利用工厂类来创建3D饼图 JFreeChart chart =ChartFactory.createPieChart3D(chartTitle, dataset, true, true,false); // 使下说明标签字体清晰,去锯齿类似于 //chart.getRenderingHints().put(RenderingHints.KEY_TEXT_ANTIALIASING,RenderingHints.VALUE_TEXT_ANTIALIAS_OFF);的效果 chart.setTextAntiAlias(false); // 图片背景色chart.setBackgroundPaint(Color.white); //设置图标题的字体重新设置title(否组有些版本Title会出现乱码) chart.getTitle().setFont((new Font("隶书",Font.CENTER_BASELINE, 20))); // 设置图例(Legend)上的文字(//底部的字体) chart.getLegend().setItemFont(newFont("隶书", Font.CENTER_BASELINE, 15)); PiePlot3D plot = (PiePlot3D)chart.getPlot(); // 图片中显示百分比:默认方式 // 指定饼图轮廓线的颜色plot.setBaseSectionOutlinePaint(Color.BLACK);plot.setBaseSectionPaint(Color.BLACK); // 设置无数据时的信息plot.setNoDataMessage("无对应的数据,请重新查询。"); // 设置无数据时的信息显示颜色plot.setNoDataMessagePaint(Color.red); // 图片中显示百分比:自定义方式,{0} 表示选项, {1} 表示数值, {2}表示所占比例 ,小数点后两位 plot.setLabelGenerator(newStandardPieSectionLabelGenerator("{0}={1}({2 })",NumberFormat.getNumberInstance(), newDecimalFormat("0.00%"))); // 图例显示百分比:自定义方式, {0} 表示选项, {1} 表示数值, {2}表示所占比例 plot.setLegendLabelGenerator(newStandardPieSectionLabelGenerator("{0}({2})")); plot.setLabelFont(new Font("隶书",Font.TRUETYPE_FONT, 12)); // 指定图片的透明度(0.0-1.0) plot.setForegroundAlpha(0.65f); // 指定显示的饼图上圆形(false)还椭圆形(true) plot.setCircular(false, true); // 设置第一个 饼块section 的开始位置,默认是12点钟方向 plot.setStartAngle(90); // 设置分饼颜色(不设置它会自己设置) // plot.setSectionPaint(pieKeys[0], newColor(244, 194, 144)); // plot.setSectionPaint(pieKeys[1], newColor(144, 233, 144)); // 把饼图生成图片 FileOutputStream fos_jpg = null; try { // 文件夹不存在则创建isChartPathExist(CHART_PATH); String chartName =CHART_PATH + charName; fos_jpg = newFileOutputStream(chartName); // 高宽的设置影响椭圆饼图的形状ChartUtilities.writeChartAsPNG(fos_jpg, chart,700, 400); return chartName; } catch (Exception e) {e.printStackTrace(); return null; } finally { try { fos_jpg.close(); System.out.println("create pie-chart."); } catch (Exception e){ e.printStackTrace(); } }}private void isChartPathExist(StringchartPath) { File file = new File(chartPath); if (!file.exists()) { file.mkdirs(); }}}

  

爱华网本文地址 » http://www.aihuau.com/a/25101015/278302.html

更多阅读

学欧美达人用螺旋发饰diy漂亮盘发 螺旋盘发器使用图解

烟雨蒙蒙的三月过去了,阳光的四月又纷沓而至,还在为披肩的散发感到烦恼吗?如此,何不向欧美发型达人学习用螺旋发饰发型diy漂亮盘发,让自己更加温柔优雅呢学欧美达人用螺旋发饰diy漂亮盘发——工具/原料2个螺旋发卡学欧美达人用螺旋发饰di

最爱我的人说了最伤我的话 最爱我的人是你

我最爱的人说了最伤我的话,遇上她是缘还是劫。小寒是我的大学同学也是我苦苦追求了三年的对象,我们相识在大一的新生联谊会上。那时的我对爱情充满了向往,上大学前我就曾立下誓言“在大学一定要谈一场轰轰烈烈的爱情,否则不是男人。”现

声明:《JFreechart jfreechart 没人用了》为网友奇葩姑娘拽天下分享!如侵犯到您的合法权益请联系我们删除