1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
|
public static ArrayList extractDataYear_NVResults(String Filename){
ArrayList<ArrayList> list = new ArrayList();
Workbook workbook;
ArrayList listItem;
Sheet sheet;
Object objContent;
String strContent;
Integer intResultTypeCount;
Integer intAnneeDebut = 0;
Integer intAnneeFin = 0;
Integer intAnneeIncr = 0;
Integer intTotalTmp = 0;
try{
workbook = Workbook.getWorkbook(new File(Filename));
sheet = workbook.getSheet("dashboard_years");
intResultTypeCount = 5;
intAnneeDebut = 1995;
intAnneeIncr = 1;
intAnneeFin= 2007;
//Recherche dans le tableau Excel les valeurs pour le graphe
int i=4;
for ( i=4; i<intResultTypeCount; i++){
listItem = new ArrayList();
listItem.add(sheet.getCell(0,i).getContents());
int j=1;
for(int l = intAnneeDebut; l<=intAnneeFin; l++)
{
if (sheet.getCell(j,i).getContents() == null)
{
strContent = "0";
}
strContent = sheet.getCell(j,i).getContents();
listItem.add( strContent );
j = j + 10;
}
list.add( listItem );
}
}
catch(Exception e)
{
}
return list;
}
//*********************************************************
private static XYDataset createDataset(String base, String cat1, String cat2, String dataDirectory, String flag, String type, String ResultType, int intBeginYear){
XYSeriesCollection dataset = new XYSeriesCollection ();
String filename = dataDirectory + base + "_Results.xls";
ArrayList<ArrayList> data = new ArrayList();
ArrayList<String> curveTitle = new ArrayList();
String period = type;
int nb;
data = BARResultsList.extractDataYear_NVResults(filename);
for(int i=0; i<data.size(); i++){
int year = intBeginYear;
int months = 3;
XYSeries series;
if(flag.equals("NVresults") {
series = new XYSeries( (String)(data.get(i)).get(0) );
for(int j=1; j<(data.get(i)).size(); j++){
series.add(year, Integer.parseInt( (String)(data.get(i)).get(j)) );
year++;
}
}
dataset.addSeries(series);
}
return dataset;
}
//******************************************************************
public static JFreeChart createChart(String base, String title, String cat1, String cat2, String dataDirectory, String flag, String type, String ResultType, int intBeginYear) {
XYDataset categorydataset = createDataset(base, cat1, cat2, dataDirectory, flag, type, ResultType, intBeginYear);
JFreeChart jfreechart = ChartFactory.createXYLineChart(title, cat1, cat2, categorydataset, PlotOrientation.VERTICAL, true, true, false);
//get a reference to the plot for further customisation...
return jfreechart;
}
} |
Partager