2013-07-07 22 views
0

我正在使用JasperReports Server 5.0專業版本JasperReports圖表:在Customize()方法中訪問系列表達式的值

對於其中一個報告,我使用Chart Customizer來自定義條形的顏色。評估時間是報告

iReport的,我已經定義了系列表達

$F{form} + "(" + $V{month} + ")" 

enter image description here

的Java文件的定製方法,我想訪問上面的表達式值是

1-sep,2-Oct,3 -Jan,4 -Feb

我試過以下代碼來獲取系列值,但沒有成功。

public JRCategorySeries[] categoryList = null ; 
    JRFillCategoryDataset categoryDS = (JRFillCategoryDataset)jasperChart.getDataset(); 
    categoryList = categoryDS.getSeries(); 

    SubCategoryAxis domainAxis = new SubCategoryAxis(""); 
    domainAxis.setCategoryMargin(0.05); 

    for (int i = 0 ; i <categoryList.length -1 ; i++) { 

    JRCategorySeries jrcategoryseries = categoryList[i]; 

    domainAxis.addSubCategory(jrcategoryseries.getSeriesExpression().getText()); 
    } 

我需要在定製方法中訪問系列數據點的幫助。我會感謝您的意見。

回答

-1

您可以從傳遞給自定義類的JFreeChart參數獲取數據集。 還訪問您的JRXML圖表設置可以通過JRChart參數進行訪問的屬性

請試試這個

public void customize(JFreeChart chart, JRChart jasperChart) { 

    // To access the dataset of the chart 
    CategoryPlot plot = (CategoryPlot) chart.getPlot(); 
    CategoryDataset catData = plot.getDataset(); 


    // to access the key property of chart <br/> 
    String key = jasperChart.getKey(); 
} 

問候 錢德拉