private JFreeChart createChart(String title) { XYDataset dataset1 = createDataset1(); XYDataset dataset2 = createDataset2(); XYBarRenderer renderer1 = new XYBarRenderer(0.20000000000000001D); renderer1.setSeriesPaint(0, Color.BLUE); renderer1.setSeriesPaint(1, Color.red); DateAxis domainAxis = new DateAxis("Date"); NumberAxis valueAxis = new NumberAxis("Value"); XYPlot plot = new XYPlot(dataset1, domainAxis, valueAxis, renderer1); StandardXYItemRenderer renderer2 = new StandardXYItemRenderer(); renderer2.setSeriesPaint(0, Color.CYAN); renderer2.setSeriesPaint(1, Color.YELLOW); plot.setDataset(1, dataset2); plot.setRenderer(1, renderer2); JFreeChart chart = new JFreeChart(title, JFreeChart.DEFAULT_TITLE_FONT, plot, true); return chart; }
StandardXYItemRenderer renderer2 = new StandardXYItemRenderer(); renderer2.setBaseToolTipGenerator(new StandardXYToolTipGenerator("{0}: ({1}, {2})", new SimpleDateFormat("EE, d-MMM-yyyy"), new DecimalFormat("0.00"))); renderer2.setSeriesPaint(0, Color.CYAN); renderer2.setSeriesStroke(0, new BasicStroke(2)); plot.setDataset(1, dataset2); StandardXYItemRenderer renderer3 = new StandardXYItemRenderer(); renderer3.setBaseToolTipGenerator(new StandardXYToolTipGenerator("{0}: ({1}, {2})", new SimpleDateFormat("EE, d-MMM-yyyy"), new DecimalFormat("0.00"))); renderer3.setSeriesPaint(0, Color.RED); renderer3.setSeriesStroke(0, new BasicStroke(4)); plot.setDataset(2, dataset3);
/** * Adds the cash flow axis to the plot. * @param plot the plot * @param dataset the cash flow dataset */ private static void addCashFlowAxis(XYPlot plot, TimeSeriesCollection dataset) { final NumberAxis cashAxis = new NumberAxis("Cash Flow Ratio"); cashAxis.setAutoRangeIncludesZero(false); plot.setRangeAxis(1, cashAxis); plot.setDataset(1, dataset); plot.mapDatasetToRangeAxis(1, 1); final StandardXYItemRenderer cashFlowRenderer = new StandardXYItemRenderer(); cashFlowRenderer.setSeriesPaint(0, Color.blue); plot.setRenderer(1, cashFlowRenderer); }
renderer2.setSeriesPaint( 0, ratioColorMin ); renderer2.setSeriesStroke( 0, new BasicStroke ( 0.5f ) ); renderer2.setSeriesPaint( 1, ratioColorAvg ); renderer2.setSeriesStroke( 1, new BasicStroke ( 1.5f ) ); renderer2.setSeriesPaint( 2, ratioColorMax ); renderer2.setSeriesStroke( 2, new BasicStroke ( 0.5f ) ); renderer2.setPlotImages( true );