Example: The following example creates a indexed 100Percent stacked bar series chart and adds values to it.
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.*;
public 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, 230);
// 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 xAxis
PercentageXAxis xAxis = new PercentageXAxis();
// Create yAxis
IndexedYAxis yAxis = new IndexedYAxis();
// Create a indexed 100Percent stacked bar series element and add values to it
Indexed100PercentStackedBarSeriesElement seriesElement1 = new Indexed100PercentStackedBarSeriesElement("Website A");
seriesElement1.getValues().add(new Indexed100PercentStackedBarValue(5, 0));
seriesElement1.getValues().add(new Indexed100PercentStackedBarValue(7, 1));
seriesElement1.getValues().add(new Indexed100PercentStackedBarValue(9, 2));
seriesElement1.getValues().add(new Indexed100PercentStackedBarValue(6, 3));
Indexed100PercentStackedBarSeriesElement seriesElement2 = new Indexed100PercentStackedBarSeriesElement("Website B");
seriesElement2.getValues().add(new Indexed100PercentStackedBarValue(4, 0));
seriesElement2.getValues().add(new Indexed100PercentStackedBarValue(2, 1));
seriesElement2.getValues().add(new Indexed100PercentStackedBarValue(5, 2));
seriesElement2.getValues().add(new Indexed100PercentStackedBarValue(8, 3));
Indexed100PercentStackedBarSeriesElement seriesElement3 = new Indexed100PercentStackedBarSeriesElement("Website C");
seriesElement3.getValues().add(new Indexed100PercentStackedBarValue(2, 0));
seriesElement3.getValues().add(new Indexed100PercentStackedBarValue(4, 1));
seriesElement3.getValues().add(new Indexed100PercentStackedBarValue(6, 2));
seriesElement3.getValues().add(new Indexed100PercentStackedBarValue(9, 3));
// Create a indexed 100Percent stacked bar series and add indexed 100Percent stacked bar series elements to it
Indexed100PercentStackedBarSeries stackedBarSeries1 = new Indexed100PercentStackedBarSeries(xAxis, yAxis);
stackedBarSeries1.add(seriesElement1);
stackedBarSeries1.add(seriesElement2);
stackedBarSeries1.add(seriesElement3);
// add indexed 100Percent stacked bar series to the plot area
plotArea.getSeries().add(stackedBarSeries1);
// adding AxisLabels to the YAxis
stackedBarSeries1.getYAxis().getLabels().add(new IndexedYAxisLabel("Q1", 0));
stackedBarSeries1.getYAxis().getLabels().add(new IndexedYAxisLabel("Q2", 1));
stackedBarSeries1.getYAxis().getLabels().add(new IndexedYAxisLabel("Q3", 2));
stackedBarSeries1.getYAxis().getLabels().add(new IndexedYAxisLabel("Q4", 3));
// add the chart to the page
page.getElements().add(chart);
// Save the PDF
document.draw("[PhysicalPath]/MyDocument.pdf" );
}
}