/** * temporal helper function * * @param dataset * @return */ private JFreeChart createChart(TimeSeriesCollection dataset) { NumberAxis axis = new NumberAxis(null); axis.setAutoRangeIncludesZero(false); // parent=new CombinedRangeXYPlot(axis); // chart = null; // XYPlot plot2=new XYPlot(dataset2, new DateAxis(null), null, new StandardXYItemRenderer()); // XYPlot subplot2=new XYPldt(dataset2, new DateAxis("Date 2"), null, ) // parent.add(subplot1); // parent.add(subplot2); // chart=new JFreeChart(null, null, parent, false); chart = ChartFactory.createTimeSeriesChart(null, "", "", dataset, false, false, false); XYPlot plot1 = chart.getXYPlot(); plot1.setDataset(dataset); plot1.setRenderer(new StandardXYItemRenderer()); plot1.setSecondaryDataset(0, hld); CandlestickRenderer c1 = new CandlestickRenderer(); // c1.setAutoWidthFactor(1.0); // c1.setAutoWidthGap(0.1); c1.setBasePaint(new Color(255, 255, 255)); c1.setBaseOutlinePaint(new Color(255, 255, 255)); c1.setPaint(new Color(255, 255, 255)); c1.setUpPaint(new Color(255, 0, 0, 80)); c1.setDownPaint(new Color(0, 255, 0, 80)); plot1.setSecondaryRenderer(0, c1); // plot1.setSecondaryDataset(0, dataset2); XYDotRenderer xd1 = new XYDotRenderer(); // plot1.setSecondaryRenderer(0, new AreaXYRenderer(AreaXYRenderer.AREA_AND_SHAPES)); // plot1.setSecondaryRenderer(0, xd1); // chart=new JFreeChart("", null, plot1, false); chart.setBackgroundPaint(new Color(0, 0, 0)); return chart; }
/** Create the chart */ private void createChart() { if (chartPanel != null) { return; } MyHistogramDataset dataset = new MyHistogramDataset(); chart = ChartFactory.createHistogram( "Histogram", null, null, dataset, PlotOrientation.VERTICAL, true, false, false); chart.getXYPlot().setForegroundAlpha(0.75f); plot = (XYPlot) chart.getPlot(); initXYPlot(plot); chartPanel = doMakeChartPanel(chart); }
protected void buildChart() { DefaultCategoryDataset dataset = new DefaultCategoryDataset(); chart = ChartFactory.createMultiplePieChart( "Untitled Chart", dataset, org.jfree.util.TableOrder.BY_COLUMN, false, true, false); chart.setAntiAlias(true); // chartPanel = new ScrollableChartPanel(chart, true); chartPanel = buildChartPanel(chart); // chartHolder.getViewport().setView(chartPanel); setChartPanel(chartPanel); JFreeChart baseChart = (JFreeChart) ((MultiplePiePlot) (chart.getPlot())).getPieChart(); PiePlot base = (PiePlot) (baseChart.getPlot()); base.setIgnoreZeroValues(true); base.setLabelOutlinePaint(java.awt.Color.WHITE); base.setLabelShadowPaint(java.awt.Color.WHITE); base.setMaximumLabelWidth( 0.25); // allow bigger labels by a bit (this will make the chart smaller) base.setInteriorGap(0.000); // allow stretch to compensate for the bigger label width base.setLabelBackgroundPaint(java.awt.Color.WHITE); base.setOutlinePaint(null); base.setBackgroundPaint(null); base.setShadowPaint(null); base.setSimpleLabels(false); // I think they're false anyway // change the look of the series title to be smaller StandardChartTheme theme = new StandardChartTheme("Hi"); TextTitle title = new TextTitle("Whatever", theme.getLargeFont()); title.setPaint(theme.getAxisLabelPaint()); title.setPosition(RectangleEdge.BOTTOM); baseChart.setTitle(title); // this must come last because the chart must exist for us to set its dataset setSeriesDataset(dataset); }