Example #1
0
  /**
   * 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;
  }
Example #2
0
  /** 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);
  }
Example #3
0
  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);
  }