Jquery中文网 www.jquerycn.cn
Jquery中文网 >  脚本编程  >  java  >  正文 java 百分比饼图的实现代码

java 百分比饼图的实现代码

发布时间:2017-12-06   编辑:www.jquerycn.cn
jquery中文网为您提供java 百分比饼图的实现代码等资源,欢迎您收藏本站,我们将为您提供最新的java 百分比饼图的实现代码资源
文章介绍了利用jfreechart来实现在java中的百分比饼图效果,有需要的同这可以参考一下。

一个显示百分比的饼图如下

image

实现代码

<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy4155')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy4155>

<%@ page contentType="text/html;charset=GBK"%>
 
 <%@ page
     import="org.jfree.chart.*,org.jfree.chart.plot.PiePlot,
     org.jfree.data.general.DefaultPieDataset,
     org.jfree.chart.servlet.ServletUtilities,
     java.awt.*,org.jfree.chart.title.TextTitle"%>
 <%@ page
     import="org.jfree.chart.labels.StandardPieSectionLabelGenerator"%>
 <%@ page import="java.text.NumberFormat"%>
 <%@page import="java.text.DecimalFormat"%>
 
 <%
     //设置数据集
     DefaultPieDataset dataset = new DefaultPieDataset();
     dataset.setValue("初中高级程序员", 0.52);
     dataset.setValue("项目经理", 0.1);
     dataset.setValue("系统分析师", 0.1);
     dataset.setValue("软件架构师", 0.1);
     dataset.setValue("其他", 0.18);
 
     //通过工厂类生成JFreeChart对象
     JFreeChart chart = ChartFactory.createPieChart3D("IT行业职业分布图",
             dataset, true, false, false);
 
     PiePlot pieplot = (PiePlot) chart.getPlot();
     //一块突出的饼图,在网上搜了好久也没找到可行的实现方式,欢迎大侠指导 <?后期如果找到解决方法再来做修改?>
 //pieplot.setExplodePercent("A",0.3D);//炸开的饼图,目前实现还有问题
 
 //DecimalFormat:
 //NumberFormat:
 //StandardPieSectionLabelGenerator:
 //setLabelGenerator():   
     DecimalFormat df = new DecimalFormat("0.00%");//获得一个DecimalFormat对象,主要是设置小数问题
     NumberFormat nf = NumberFormat.getNumberInstance();//获得一个NumberFormat对象
     StandardPieSectionLabelGenerator sp = new StandardPieSectionLabelGenerator(
             "{0}{2}", nf, df);//获得StandardPieSectionLabelGenerator对象
     pieplot.setLabelGenerator(sp);//设置饼图显示百分比
 
 //没有数据的时候显示的内容
     pieplot.setNoDataMessage("无数据显示");
     pieplot.setCircular(false);
     pieplot.setLabelGap(0.02D);
 
     pieplot.setIgnoreNullValues(true);//设置不显示空值
     pieplot.setIgnoreZeroValues(true);//设置不显示负值
 
 //标题文字乱码  IT行业职业分布图
     TextTitle textTitle = chart.getTitle();
     textTitle.setFont(new Font("宋体", Font.PLAIN, 20));
 
     //饼上的文字乱码
     PiePlot plot = (PiePlot) chart.getPlot();
     plot.setLabelFont(new Font("宋体", Font.PLAIN, 12));
 
     //图例文字乱码 饼图下面的5个说明
     chart.getLegend().setItemFont(new Font("宋体", Font.PLAIN, 12));
 
     String filename = ServletUtilities.saveChartAsPNG(chart, 500, 300,
             null, session);
     String graphURL = request.getContextPath()
             "/DisplayChart?filename=" filename;
 %>
 
 <html>
     <head>
         <title>饼状图2(加上百分比并突出显示某块)</title>
     </head>
     <body>
         <img src="<%=graphURL%>" width=500 height=300 border=0
             usemap="#<%= filename %>">
     </body>
 </html>

</td> </tr> </table></td> </tr> </table>

您可能感兴趣的文章:
教你如何使用JSP绘制饼图
highcharts 饼图显示数量与百分比实现代码
js图表组件highcharts简介
Highcharts 饼状图(结合PHP、Mysql)
jqPlot 基于jquery的画图插件
jqPlot jquery的页面图表绘制工具
Highcharts教程(13) Pie饼图与其他图形
Highcharts绘制饼图的简单实例
Highcharts 柱状图、饼状图、曲线图三图合一的实现代码
Jquery图形报表插件 jqplot简介及参数详解

[关闭]