Example usage for org.jfree.chart ChartUtilities applyCurrentTheme

List of usage examples for org.jfree.chart ChartUtilities applyCurrentTheme

Introduction

In this page you can find the example usage for org.jfree.chart ChartUtilities applyCurrentTheme.

Prototype

public static void applyCurrentTheme(JFreeChart chart) 

Source Link

Document

Applies the current theme to the specified chart.

Usage

From source file:com.intel.stl.ui.common.view.ComponentFactory.java

public static JFreeChart createStackedXYBarChart(XYDataset dataset, String title, String domainAxisLabel,
        String rangeAxisLabel, boolean legend) {
    DateAxis dateaxis = new DateAxis(domainAxisLabel);
    NumberAxis numberaxis = new NumberAxis(rangeAxisLabel);
    StackedXYBarRenderer stackedxybarrenderer = new StackedXYBarRenderer(0.10000000000000001D);
    XYPlot xyplot = new XYPlot(dataset, dateaxis, numberaxis, stackedxybarrenderer);
    JFreeChart jfreechart = new JFreeChart(title, UIConstants.H5_FONT, xyplot, legend);
    ChartUtilities.applyCurrentTheme(jfreechart);

    stackedxybarrenderer.setShadowVisible(false);
    stackedxybarrenderer.setDrawBarOutline(false);
    stackedxybarrenderer.setBarPainter(new StandardXYBarPainter());
    stackedxybarrenderer.setBaseToolTipGenerator(new StandardXYToolTipGenerator(
            "<html><b>{0}</b><br> Time: {1}<br> Data: {2}</html>", Util.getHHMMSS(), new DecimalFormat("###")));

    xyplot.setBackgroundPaint(null);//  www  .  j a  va  2  s.  c o  m
    xyplot.setOutlinePaint(null);
    xyplot.setRangeGridlinePaint(UIConstants.INTEL_BORDER_GRAY);

    dateaxis.setLabelFont(UIConstants.H5_FONT);
    dateaxis.setLowerMargin(0.0D);
    dateaxis.setUpperMargin(0.0D);

    numberaxis.setRangeType(RangeType.POSITIVE);
    numberaxis.setLabelFont(UIConstants.H5_FONT);
    numberaxis.setLabelInsets(new RectangleInsets(0, 0, 0, 0));
    numberaxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());

    return jfreechart;
}

From source file:beproject.MainGUI.java

void createTimeLine() throws SQLException {
    TimeSeriesCollection dataset = new TimeSeriesCollection();
    getTimeLineData(dataset);//w w w.ja v a 2s  .c  om
    DateAxis domain = new DateAxis("Time");
    NumberAxis range = new NumberAxis("Tweet Count");
    XYItemRenderer renderer = new XYLineAndShapeRenderer(true, false);
    renderer.setSeriesPaint(1, Color.BLUE);
    renderer.setSeriesStroke(0, new BasicStroke(3f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL));
    renderer.setSeriesStroke(1, new BasicStroke(3f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL));
    XYPlot plot = new XYPlot(dataset, domain, range, renderer);
    domain.setAutoRange(true);
    domain.setTickUnit(new DateTickUnit(DateTickUnitType.HOUR, 2, Regression.sdf));
    domain.setLowerMargin(0.0);
    domain.setUpperMargin(0.0);
    domain.setTickLabelsVisible(true);
    range.setTickLabelsVisible(true);

    plot.setDomainGridlinesVisible(false);
    range.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
    renderer.setBaseItemLabelsVisible(true);

    JFreeChart liveTweetAnalysisChart = new JFreeChart("Rate of tweets per hour",
            new Font("Tahoma", Font.BOLD, 24), plot, true);
    liveTweetAnalysisChart.setBorderVisible(false);

    ChartUtilities.applyCurrentTheme(liveTweetAnalysisChart);

    domain.setTickLabelInsets(RectangleInsets.ZERO_INSETS);
    range.setTickMarksVisible(false);
    range.setTickLabelInsets(RectangleInsets.ZERO_INSETS);
    domain.setTickMarksVisible(false);
    liveTweetAnalysisChart.setPadding(RectangleInsets.ZERO_INSETS);

    ChartPanel liveTweetAnalysisChartPanel = new ChartPanel(liveTweetAnalysisChart, true);
    liveTweetAnalysisChartPanel.setBorder(null);

    if (timeLineChart == null) {
        timeLineChart = liveTweetAnalysisChartPanel;
    } else {
        timeLinePanel.remove(timeLineChart);
        timeLineChart = liveTweetAnalysisChartPanel;
    }
    timeLinePanel.add(timeLineChart);
    timeLinePanel.validate();
}

From source file:beproject.MainGUI.java

void createPieChart() throws SQLException {
    DefaultPieDataset dataset = new DefaultPieDataset();
    String tmp = "select polarity, count(polarity) from tweets where moviename='" + movieName
            + "' group by polarity";
    ResultSet rs = stmt.executeQuery(tmp);
    while (rs.next()) {
        int a = rs.getInt(1);
        switch (a) {
        case 4:/*from w w  w . j  ava 2s .co  m*/
            dataset.setValue("Very Positive", rs.getInt(2));
            break;
        case 3:
            dataset.setValue("Positive", rs.getInt(2));
            break;
        case 2:
            dataset.setValue("Neutral", rs.getInt(2));
            break;
        case 1:
            dataset.setValue("Negative", rs.getInt(2));
            break;
        case 0:
            dataset.setValue("Very Negative", rs.getInt(2));
            break;
        }
    }

    JFreeChart chart = ChartFactory.createPieChart("Sentiment Analysis", dataset, true, true, false);
    chart.setBackgroundPaint(Color.WHITE);
    chart.setBorderVisible(false);
    PiePlot p = (PiePlot) chart.getPlot();
    //p.setSectionPaint("Very Negative", Color.BLACK);
    p.setSectionPaint("Negative", Color.BLACK);
    //p.setSectionPaint("Neutral", new Color(3, 156, 248));
    //p.setSectionPaint("Positive", new Color(96, 194, 253));
    //p.setSectionPaint("Very Positive", new Color(0xffffff));
    p.setSimpleLabels(true);
    ChartUtilities.applyCurrentTheme(chart);
    if (pieChart == null) {
        pieChart = new ChartPanel(chart);
        sentimentPanel.add(pieChart);
    } else {
        sentimentPanel.remove(pieChart);
        pieChart = new ChartPanel(chart);
        sentimentPanel.add(pieChart);
    }
    pieChart.setBackground(Color.WHITE);
    sentimentPanel.validate();
}

From source file:beproject.MainGUI.java

void liveTweetAnalysis() {
    new DataGenerator(1000).start();
    rate = new TimeSeries("Total count", Second.class);
    rate.setMaximumItemAge(15);//  w ww.j  a v  a  2s. c  o m
    TimeSeriesCollection dataset = new TimeSeriesCollection();
    dataset.addSeries(rate);
    DateAxis domain = new DateAxis("Time");
    NumberAxis range = new NumberAxis("Tweet Count");
    XYItemRenderer renderer = new XYLineAndShapeRenderer(true, false);
    renderer.setSeriesPaint(1, Color.BLUE);
    renderer.setSeriesStroke(0, new BasicStroke(3f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL));
    renderer.setSeriesStroke(1, new BasicStroke(3f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL));
    XYPlot plot = new XYPlot(dataset, domain, range, renderer);
    domain.setAutoRange(true);
    domain.setLowerMargin(0.0);
    domain.setUpperMargin(0.0);
    domain.setTickLabelsVisible(true);
    range.setTickLabelsVisible(true);

    plot.setDomainGridlinesVisible(false);
    range.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
    renderer.setBaseItemLabelsVisible(true);

    JFreeChart liveTweetAnalysisChart = new JFreeChart("Tweets Per Second", new Font("Tahoma", Font.BOLD, 24),
            plot, true);
    liveTweetAnalysisChart.setBorderVisible(false);
    liveTweetAnalysisChart.setBorderPaint(null);

    ChartUtilities.applyCurrentTheme(liveTweetAnalysisChart);

    domain.setTickLabelInsets(RectangleInsets.ZERO_INSETS);
    range.setTickMarksVisible(false);
    range.setTickLabelInsets(RectangleInsets.ZERO_INSETS);
    domain.setTickMarksVisible(false);
    liveTweetAnalysisChart.setPadding(RectangleInsets.ZERO_INSETS);

    ChartPanel liveTweetAnalysisChartPanel = new ChartPanel(liveTweetAnalysisChart, true);
    liveTweetAnalysisChartPanel.setBorder(null);

    liveTweetsAnalysisPanel.add(liveTweetAnalysisChartPanel, BorderLayout.CENTER);
    liveTweetsAnalysisPanel.validate();
}