I was running this code for lineChart in PF5 but refuses to run in PF8
public class CostChartSummary {
public LineChartModel lineChart;
public ChartDataSet dataList;
public CostChartSummary(){}
@PostConstruct
public void init(){
lineChart = new LineChartModel();
LineChartSeries estimates = new LineChartSeries();
estimates.setFill(true);
estimates.setLabel("Estimated Cost");
estimates.set("1",15000);
estimates.set("2",18000);
estimates.set("3",32000);
estimates.set("4",45000);
estimates.set("5",53000);
estimates.set("6",56000);
LineChartSeries actual = new LineChartSeries();
actual.setFill(true);
actual.setLabel("Actual Cost");
actual.set("1",9000);
actual.set("2",8000);
actual.set("3",22000);
actual.set("4",35000);
actual.set("5",47000);
actual.set("6",51000);
lineChart.addSeries(estimates);
lineChart.addSeries(actual);
lineChart.setShowPointLabels(true);
lineChart.setTitle("Project Cost Summary");
lineChart.setStacked(true);
//dataList = new ChartDataSet() {};
class CData extends ChartDataSet{
String name;
CData(String name){
this.name = name;
}
}
String john = "john";
CData cdata = new CData(john);
lineChart.getData().addChartDataSet(cdata);
// Axis xAxis = new CategoryAxis("Months");
// lineChart.getAxes().put(AxisType.X, xAxis);
//
// Axis yAxis = new CategoryAxis("Shillings");
// lineChart.getAxes().put(AxisType.Y, yAxis);
// lineChart.setLegendPosition("e");
// yAxis.setMin(0);
// yAxis.setMax(60000);
}
public LineChartModel getLineChart() {
return lineChart;
}
public void setLineChart(LineChartModel lineChart) {
this.lineChart = lineChart;
}
}
Seems theres a problem with add series method as shown with the red underline below.

I tried to add data through the ChartDataSet as seen by the small inner class CData by extending the ChartDataSet, but it throws a null pointer. The only significant change is the PF5 to PF8 is the lineChartModel imports name...but PF5 and PF8 showcase methods are exactly same.
How do you add data to line Chart in PF8?