com.cete.dynamicpdf.pageelements.charting.values
Class DateTimeStackedAreaValue



Example: The following example creates a date time stacked area chart.

import com.cete.dynamicpdf.Document;
import com.cete.dynamicpdf.Page;
import com.cete.dynamicpdf.pageelements.charting.*;
import com.cete.dynamicpdf.pageelements.charting.series.*;
import com.cete.dynamicpdf.pageelements.charting.values.*;
import java.util.Calendar;
 
 class MyClass {
       public static void main(String args[]){
        // Create a PDF Document
        Document document = new Document();
        
        // Create a Page and add it to the document
        Page page = new Page();
        document.getPages().add(page);
        
        // Create a chart
        Chart chart = new Chart(0, 0, 400, 200);
        
        // Get the default plot area from the chart
        PlotArea plotArea = chart.getPrimaryPlotArea();
        
        // Create header titles and add it to the chart
        Title title1 = new Title("Website Visitors");
        Title title2 = new Title("Year - 2007");
        chart.getHeaderTitles().add(title1);
        chart.getHeaderTitles().add(title2);
        
        // Create positions
        Calendar p0=Calendar.getInstance();
        p0.set(2007,0,1);
        Calendar p1=Calendar.getInstance();
        p1.set(2007,1,1);
        Calendar p2=Calendar.getInstance();
        p2.set(2007,2,1);
        Calendar p3=Calendar.getInstance();
        p3.set(2007,3,1);
        
        // Create a date time stacked area series element and add values to it
        DateTimeStackedAreaSeriesElement seriesElement1 = new DateTimeStackedAreaSeriesElement("Website A");
        seriesElement1.getValues().add(new DateTimeStackedAreaValue(5,    p0));
        seriesElement1.getValues().add(new DateTimeStackedAreaValue(7,    p1));
        seriesElement1.getValues().add(new DateTimeStackedAreaValue(9,    p2));
        seriesElement1.getValues().add(new DateTimeStackedAreaValue(6,    p3));
        DateTimeStackedAreaSeriesElement seriesElement2 = new DateTimeStackedAreaSeriesElement("Website B");
        seriesElement2.getValues().add(new DateTimeStackedAreaValue(4,    p0));
        seriesElement2.getValues().add(new DateTimeStackedAreaValue(2,    p1));
        seriesElement2.getValues().add(new DateTimeStackedAreaValue(5,    p2));
        seriesElement2.getValues().add(new DateTimeStackedAreaValue(8,    p3));
        DateTimeStackedAreaSeriesElement seriesElement3 = new DateTimeStackedAreaSeriesElement("Website C");
        seriesElement3.getValues().add(new DateTimeStackedAreaValue(2,    p0));
        seriesElement3.getValues().add(new DateTimeStackedAreaValue(4,    p1));
        seriesElement3.getValues().add(new DateTimeStackedAreaValue(6,    p2));
        seriesElement3.getValues().add(new DateTimeStackedAreaValue(9,    p3));
        
        // Create a date time stacked area series and add date time stacked area series elements to it
        DateTimeStackedAreaSeries stackedAreaSeries1 = new DateTimeStackedAreaSeries();
        stackedAreaSeries1.add(seriesElement1);
        stackedAreaSeries1.add(seriesElement2);
        stackedAreaSeries1.add(seriesElement3);
        
        // add date time stacked area series to the plot area
        plotArea.getSeries().add(stackedAreaSeries1);
        
        // Create a title and add it to yaxis
        Title title3 = new Title("Viewers (in millions)");
        stackedAreaSeries1.getYAxis().getTitles().add(title3);
        
        // set label list format for the axislabels
        stackedAreaSeries1.getXAxis().setLabelFormat("MMM");
        
        // add the chart to the page
        page.getElements().add(chart);
        
        // Save the PDF
        document.draw("[PhysicalPath]/MyDocument.pdf");
       }
 }