Report-J free Chart


開発者ブログ:http://www.developsearch.com


/**
	 *          image jfreeChart
	 * 
	 * @param json
	 * @param res
	 * @throws IOException 
	 * @throws Exception
	 */
	public String fetchContentTypeStatChartData(GetContentTypeStateResponse res) throws IOException
	{
	    Double[] data = new Double[8];
        String[] keys = {"    ", "    ","  ","   ","       ","    ","    ","  "};
        String imageNum = null;
		 
		 if( null != res.getContentTypes() && res.getContentTypes().size() > 0 )
		 {
			 ContentTypeState content = res.getContentTypes().get(0);
             data[0] = Double.parseDouble(content.getBooks().substring(0,content.getBooks().length()-1));
             data[1] = Double.parseDouble(content.getMedia().substring(0,content.getMedia().length()-1));
             data[2] = Double.parseDouble(content.getCaze().substring(0,content.getCaze().length()-1));
             data[3] = Double.parseDouble(content.getGauge().substring(0,content.getGauge().length()-1));
             data[4] = Double.parseDouble(content.getTemplate().substring(0,content.getTemplate().length()-1));
             data[5] = Double.parseDouble(content.getDocument().substring(0,content.getDocument().length()-1));
             data[6] = Double.parseDouble(content.getIndexCata().substring(0,content.getIndexCata().length()-1));
             data[7] = Double.parseDouble(content.getCourse().substring(0,content.getCourse().length()-1));
			 ChartUtil chartUtil = ChartUtil.getInstance();
             imageNum = chartUtil.drawPieChart3D(chartUtil.getDataPieSetByUtil(data, keys), "        ", "", 600, 400, "contentTypeStat");

		 }

		 return imageNum;
	}


    /**
	 *          image jfreechart
	 * 
	 * @param json
	 * @param res
	 * @throws UnsupportedEncodingException 
	 * @throws Exception
	 */
	public String fetchSingleExerciseDetailChartData(GetSingleExerciseDetailResponse res) throws UnsupportedEncodingException
	{
		 String imageNum = ""; 
		 if( null != res.getDetails() && res.getDetails().size() > 0 )
		 {
			 double[][] _data = new double[res.getDetails().size()][5];
	         String[] rowKeys = new String[res.getDetails().size()];
	         String[] columnKeys = { "A", "B", "C", "D", "E" }; 
	         
	         /*     
	          double[][] _data = new double[][]{ 
				   { 0.21, 0.66, 0.23, 0.40, 0.26 }, 
				   { 0.21, 0.66, 0.23, 0.40, 0.26 },
				   { 0.25, 0.21, 0.10, 0.40, 0.16 } 
			 }; 
			 String[] rowKeys = { "aa", "bb", "cc"  };*/
				                                
			 for( int i=0; i<res.getDetails().size(); i++)
			 {
				 SingleExerciseDetail single = res.getDetails().get(i);
				 
	             rowKeys[ i ] = single.getClassName();
	             
	             _data[ i ][ 0 ] = Double.valueOf(single.getPercentA());
	             _data[ i ][ 1 ] = Double.valueOf(single.getPercentB());
	             _data[ i ][ 2 ] = Double.valueOf(single.getPercentC());
	             _data[ i ][ 3 ] = Double.valueOf(single.getPercentD());
	             _data[ i ][ 4 ] = Double.valueOf(single.getPercentE());
	             
			 }
			 CategoryDataset c_dataset = DatasetUtilities.createCategoryDataset(rowKeys, columnKeys, _data); 
			 imageNum = ChartUtil.getInstance().drawBarChart3D( c_dataset, "            ", "", 600, 400,"singleExerciseDetail");
		 }
		return imageNum;
	}


<div id="chartdiv" align="center"></div>

//           	
createReportImage("contentTypeStat", data.imageNum);

//            
createReportImage("singleExerciseDetail", data.imageNum);

/**
 *         
 * @param folder      
 * @param imageName    
 */
function createReportImage(folder,imageName){
	if(isEmpty(imageName)){
		var chartdiv = document.getElementById("chartdiv"); 
		chartdiv.innerHTML="";  
	    var img = document.createElement("img");  
	    var imgSrc = CONTEXT_PATH + "/images/chart/"+folder+"/"+imageName+".png";
	    img.setAttribute("src",imgSrc); 
	    chartdiv.appendChild(img);
	}
}