Example: The following example creates a date time stacked line 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 com.cete.dynamicpdf.pageelements.charting.axes.*;
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 a date time xaxis
DateTimeXAxis xAxis = new DateTimeXAxis();
// Create a percentage yaxis
PercentageYAxis yAxis = new PercentageYAxis();
// 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 line series element and add values to it
DateTimeStackedLineSeriesElement seriesElement1 = new DateTimeStackedLineSeriesElement("Website A");
seriesElement1.getValues().add(new DateTimeStackedLineValue(5, p0));
seriesElement1.getValues().add(new DateTimeStackedLineValue(7, p1));
seriesElement1.getValues().add(new DateTimeStackedLineValue(9, p2));
seriesElement1.getValues().add(new DateTimeStackedLineValue(6, p3));
DateTimeStackedLineSeriesElement seriesElement2 = new DateTimeStackedLineSeriesElement("Website B");
seriesElement2.getValues().add(new DateTimeStackedLineValue(4, p0));
seriesElement2.getValues().add(new DateTimeStackedLineValue(2, p1));
seriesElement2.getValues().add(new DateTimeStackedLineValue(5, p2));
seriesElement2.getValues().add(new DateTimeStackedLineValue(8, p3));
DateTimeStackedLineSeriesElement seriesElement3 = new DateTimeStackedLineSeriesElement("Website C");
seriesElement3.getValues().add(new DateTimeStackedLineValue(2, p0));
seriesElement3.getValues().add(new DateTimeStackedLineValue(4, p1));
seriesElement3.getValues().add(new DateTimeStackedLineValue(6, p2));
seriesElement3.getValues().add(new DateTimeStackedLineValue(9, p3));
// Create a date time stacked line series and add date time stacked line series elements to it
DateTimeStackedLineSeries stackedLineSeries1 = new DateTimeStackedLineSeries();
stackedLineSeries1.add(seriesElement1);
stackedLineSeries1.add(seriesElement2);
stackedLineSeries1.add(seriesElement3);
// add date time line series to the plot area
plotArea.getSeries().add(stackedLineSeries1);
// set label list format for the axislabels
stackedLineSeries1.getXAxis().setLabelFormat("MMM");
// add the chart to the page
page.getElements().add(chart);
// Save the PDF
document.draw("[PhysicalPath]/MyDocument.pdf");
}
}