// build a Pie Chart and a panel to display it
final JFreeChart pieChart_IssuesByStatus = new JFreeChart("Issues By Status", new CustomPiePlot(issuesByStatusDataset));
pieChart_IssuesByStatus.setBackgroundPaint(CHART_PANEL_BACKGROUND_PAINT);
pieChart_IssuesByStatus.getLegend().setBorder(CHART_LEGEND_BORDER);
this.pieChartPanel_IssuesByStatus = new ChartPanel(pieChart_IssuesByStatus, true);
// build a Line Chart and a panel to display it
final JFreeChart lineChart_OpenIssuesOverTime = ChartFactory.createLineChart("Open Issues Over Time", "Time", "Open Issues", new OpenIssuesByMonthCategoryDataset(issuesList), PlotOrientation.VERTICAL, true, true, false);
lineChart_OpenIssuesOverTime.setBackgroundPaint(CHART_PANEL_BACKGROUND_PAINT);
lineChart_OpenIssuesOverTime.getLegend().setBorder(CHART_LEGEND_BORDER);
final CategoryPlot categoryPlot = lineChart_OpenIssuesOverTime.getCategoryPlot();
categoryPlot.setBackgroundPaint(CHART_PLOT_BACKGROUND_PAINT);
categoryPlot.setDomainAxis(new CustomCategoryAxis());
categoryPlot.setRenderer(new CustomCategoryItemRenderer(categoryPlot.getDataset()));
this.lineChartPanel_OpenIssuesOverTime = new ChartPanel(lineChart_OpenIssuesOverTime, true);
// add all ChartPanels to a master panel
this.allChartsPanel.add(this.pieChartPanel_IssuesByStatus, new GridBagConstraints(0, 0, 1, 1, 0.4, 1.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0));
this.allChartsPanel.add(this.lineChartPanel_OpenIssuesOverTime, new GridBagConstraints(1, 0, 1, 1, 0.6, 1.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0));
}