Example usage for org.jfree.chart ChartFactory createBarChart

List of usage examples for org.jfree.chart ChartFactory createBarChart

Introduction

In this page you can find the example usage for org.jfree.chart ChartFactory createBarChart.

Prototype

public static JFreeChart createBarChart(String title, String categoryAxisLabel, String valueAxisLabel,
        CategoryDataset dataset) 

Source Link

Document

Creates a bar chart with a vertical orientation.

Usage

From source file:com.przemo.probabilities.gui.SimulatorPanel.java

private void addMainChart() {
    JFreeChart chart = ChartFactory.createBarChart("Account balance simulation", "Iteration", "Balance", null);
    chart.getCategoryPlot().getDomainAxis().setVisible(false);
    p = new ChartPanel(chart);
    p.setPreferredSize(new Dimension(mainChartPanel.getWidth() - 2, mainChartPanel.getHeight() - 20));
    chart.getCategoryPlot().setBackgroundPaint(Color.WHITE);
    mainChartPanel.setLayout(new FlowLayout());
    mainChartPanel.add(p);//from  ww w. j av a2  s.  c  o  m
    //mainChartPanel.validate();
}

From source file:Visuals.BarChart.java

public ChartPanel drawBarChart() {
    DefaultCategoryDataset bardataset = new DefaultCategoryDataset();
    bardataset.addValue(new Double(low), "Low (" + low + ")", lowValue);
    bardataset.addValue(new Double(medium), "Medium (" + medium + ")", mediumValue);
    bardataset.addValue(new Double(high), "High (" + high + ")", highValue);
    bardataset.addValue(new Double(critical), "Critical (" + critical + ")", criticalValue);

    JFreeChart barchart = ChartFactory.createBarChart(title, // Title  
            riskCategory, riskCountTitle, bardataset // Dataset   
    );/*from   w  w w .  j  a  v a  2  s .  c om*/

    final CategoryPlot plot = barchart.getCategoryPlot();
    CategoryItemRenderer renderer = new CustomRenderer();
    NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
    rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
    renderer.setBaseItemLabelGenerator(
            new StandardCategoryItemLabelGenerator(riskCountTitle, NumberFormat.getInstance()));

    DecimalFormat df = new DecimalFormat("##");
    renderer.setItemLabelGenerator(new StandardCategoryItemLabelGenerator("{2}", df));
    Font m1Font;
    m1Font = new Font("Cambria", Font.BOLD, 16);
    renderer.setItemLabelFont(m1Font);
    renderer.setItemLabelPaint(null);

    //barchart.removeLegend();
    plot.setRenderer(renderer);
    //renderer.setPositiveItemLabelPosition(new ItemLabelPosition(ItemLabelAnchor.OUTSIDE5, TextAnchor.CENTER));
    //renderer.setItemLabelsVisible(true);
    barchart.getCategoryPlot().setRenderer(renderer);

    LegendItemCollection chartLegend = new LegendItemCollection();
    Shape shape = new Rectangle(10, 10);
    chartLegend.add(new LegendItem("Low (" + low + ")", null, null, null, shape, new Color(230, 219, 27)));
    chartLegend
            .add(new LegendItem("Medium (" + medium + ")", null, null, null, shape, new Color(85, 144, 176)));
    chartLegend.add(new LegendItem("High (" + high + ")", null, null, null, shape, new Color(230, 90, 27)));
    chartLegend.add(
            new LegendItem("Critical (" + critical + ")", null, null, null, shape, new Color(230, 27, 27)));
    plot.setFixedLegendItems(chartLegend);
    plot.setBackgroundPaint(new Color(210, 234, 243));
    ChartPanel chartPanel = new ChartPanel(barchart);
    return chartPanel;
}

From source file:org.jfree.chart.swt.demo.SWTBarChartDemo1.java

/**
 * Creates a sample chart./*from   w ww.jav a  2  s  .c o  m*/
 *
 * @param dataset  the dataset.
 *
 * @return The chart.
 */
private static JFreeChart createChart(CategoryDataset dataset) {

    // create the chart...
    JFreeChart chart = ChartFactory.createBarChart("SWTBarChartDemo1", // chart title
            "Category", // domain axis label
            "Value", // range axis label
            dataset);

    // NOW DO SOME OPTIONAL CUSTOMISATION OF THE CHART...

    // get a reference to the plot for further customisation...
    CategoryPlot plot = (CategoryPlot) chart.getPlot();

    // set the range axis to display integers only...
    NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
    rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());

    // disable bar outlines...
    BarRenderer renderer = (BarRenderer) plot.getRenderer();
    renderer.setDrawBarOutline(false);

    // the SWTGraphics2D class doesn't handle GradientPaint well, so
    // replace the gradient painter from the default theme with a
    // standard painter...
    renderer.setBarPainter(new StandardBarPainter());

    CategoryAxis domainAxis = plot.getDomainAxis();
    domainAxis.setCategoryLabelPositions(CategoryLabelPositions.createUpRotationLabelPositions(Math.PI / 6.0));
    // OPTIONAL CUSTOMISATION COMPLETED.

    return chart;

}

From source file:datavis.Gui.java

private void initGraphs(DataList dataset) {

    //Initialize the GUI with default, blank sample graphs
    //That serve as place holders for that actual content

    //Create Pie Chart
    PieChart samplePie = new PieChart("Sample Data");
    samplePie.addData("Default Value", 1.0);
    JFreeChart chart = samplePie.getChartPanel();

    //Add chart to GUI
    javax.swing.JPanel chartPanel = new ChartPanel(chart);
    chartPanel.setSize(jPanel1.getSize());
    jPanel1.add(chartPanel);// www. ja  v  a  2s. c o m
    jPanel1.getParent().validate();

    //Create Line graph
    DefaultCategoryDataset sampleLine = new DefaultCategoryDataset();
    sampleLine.setValue(1.0, "sample Data", "Sample Data");
    JFreeChart chart2 = ChartFactory.createLineChart("Sample Data", "Sample", "Sample", sampleLine);

    //Add chart to GUI
    javax.swing.JPanel chartPanel2 = new ChartPanel(chart2);
    chartPanel2.setSize(jPanel2.getSize());
    jPanel2.add(chartPanel2);
    jPanel2.getParent().validate();

    //Create bar graph
    DefaultCategoryDataset sampleBar = new DefaultCategoryDataset();
    sampleLine.setValue(1.0, "sample Data", "Sample Data");
    JFreeChart chart3 = ChartFactory.createBarChart("Sample Data", "Sample", "Sample", sampleBar);

    //Add chart to GUI
    javax.swing.JPanel chartPanel3 = new ChartPanel(chart3);
    chartPanel3.setSize(jPanel3.getSize());
    jPanel3.add(chartPanel3);
    jPanel3.getParent().validate();

    //Set the author information to the info box
    jTextArea2.setText(displayDevelopers);
}

From source file:org.jfree.chart.demo.BarChartDemo1.java

/**
 * Creates a sample chart./*from  ww w .jav  a  2s  .  c  om*/
 *
 * @param dataset  the dataset.
 *
 * @return The chart.
 */
private static JFreeChart createChart(CategoryDataset dataset) {
    JFreeChart chart = ChartFactory.createBarChart("Performance: JFreeSVG vs Batik", null /* x-axis label*/,
            "Milliseconds" /* y-axis label */, dataset);
    chart.addSubtitle(
            new TextTitle("Time to generate 1000 charts in SVG " + "format (lower bars = better performance)"));
    chart.setBackgroundPaint(Color.white);
    CategoryPlot plot = (CategoryPlot) chart.getPlot();

    // ******************************************************************
    //  More than 150 demo applications are included with the JFreeChart
    //  Developer Guide...for more information, see:
    //
    //  >   http://www.object-refinery.com/jfreechart/guide.html
    //
    // ******************************************************************

    NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
    rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
    BarRenderer renderer = (BarRenderer) plot.getRenderer();
    renderer.setDrawBarOutline(false);
    chart.getLegend().setFrame(BlockBorder.NONE);
    return chart;
}

From source file:org.jfree.chart.demo.selection.SelectionDemo5Category.java

private static JFreeChart createChart(CategoryDataset dataset,
        DatasetSelectionExtension<CategoryCursor<String, String>> ext) {

    // create the chart...
    JFreeChart chart = ChartFactory.createBarChart("Bar Chart Demo 1", "Category", "Value", dataset);

    CategoryPlot plot = (CategoryPlot) chart.getPlot();
    plot.setDomainGridlinesVisible(true);
    plot.setRangeCrosshairVisible(true);
    plot.setRangeCrosshairPaint(Color.blue);

    // set the range axis to display integers only...
    NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
    rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());

    // disable bar outlines...
    BarRenderer renderer = (BarRenderer) plot.getRenderer();
    renderer.setDrawBarOutline(false);/*from  ww w . j av a  2s. c  o m*/

    // set up gradient paints for series...
    GradientPaint gp0 = new GradientPaint(0.0f, 0.0f, Color.BLUE, 0.0f, 0.0f, new Color(0, 0, 64));
    GradientPaint gp1 = new GradientPaint(0.0f, 0.0f, Color.GREEN, 0.0f, 0.0f, new Color(0, 64, 0));
    GradientPaint gp2 = new GradientPaint(0.0f, 0.0f, Color.RED, 0.0f, 0.0f, new Color(64, 0, 0));
    renderer.setSeriesPaint(0, gp0);
    renderer.setSeriesPaint(1, gp1);
    renderer.setSeriesPaint(2, gp2);

    renderer.setLegendItemToolTipGenerator(new StandardCategorySeriesLabelGenerator("Tooltip: {0}"));

    CategoryAxis domainAxis = plot.getDomainAxis();
    domainAxis.setCategoryLabelPositions(CategoryLabelPositions.createUpRotationLabelPositions(Math.PI / 6.0));

    //add selection specific rendering
    IRSUtilities.setSelectedItemPaint(renderer, ext, Color.WHITE);

    //register plot as selection change listener
    ext.addChangeListener(plot);

    return chart;
}

From source file:moller.javapeg.program.gui.frames.ImageRepositoryStatisticsViewer.java

private ChartPanel createChart(CategoryDataset bardataset, String label) {
    String title = getLang().get("imagestatisticsviewer.chart.title.prefix");
    String valueAxisLabel = getLang().get("imagestatisticsviewer.chart.valueAxisLabel");

    JFreeChart barChart = ChartFactory.createBarChart(title + " " + label, label, valueAxisLabel, bardataset);

    ChartPanel chartPanel = new ChartPanel(barChart);
    chartPanel.setName(label);//from   w ww . j  av a  2 s  .  c  o m
    chartPanel.setMouseWheelEnabled(true);

    final CategoryPlot plot = barChart.getCategoryPlot();
    plot.setBackgroundPaint(new Color(204, 204, 204));

    BarRenderer barRenderer = (BarRenderer) plot.getRenderer();
    barRenderer.setBarPainter(new StandardBarPainter());
    barRenderer.setSeriesPaint(0, new Color(102, 153, 204));
    barRenderer.setDrawBarOutline(true);
    barRenderer.setSeriesOutlinePaint(0, Color.BLACK);

    return chartPanel;
}

From source file:cmpt305.lab3.gui.controllers.CompareGraphController.java

public CompareGraphController(User main, User... users) {
    this.main = main;

    BAR_GRAPH = new DefaultCategoryDataset();
    COMPARE_GRAPH = new DefaultCategoryDataset();

    JFreeChart t = ChartFactory.createBarChart("SteamWeb", "User", "Time Spent in Each Genre", BAR_GRAPH);

    addData(main);// ww w  .  ja v a  2s. c om

    if (users != null && users.length > 0) {
        Arrays.asList(users).stream().filter(u -> !u.equals(main)).distinct().forEach(u -> {
            addData(u);
            COMPARE.add(u);
        });
    }

    CategoryPlot plot = t.getCategoryPlot();
    plot.setDataset(1, COMPARE_GRAPH);
    plot.mapDatasetToRangeAxis(1, 1);
    plot.setRangeAxis(1, new NumberAxis("Compatability"));
    LineAndShapeRenderer rend = new LineAndShapeRenderer();
    rend.setBaseToolTipGenerator((cd, x, y) -> String.format("%s: %f", cd.getColumnKey(y), cd.getValue(x, y)));
    rend.setSeriesVisibleInLegend(0, false);
    plot.setRenderer(1, rend);

    VIEW = new ChartPanel(t);
    setSize();
}

From source file:UserInterface.SearchPatientJPanel.java

private void btnGenerateChartActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnGenerateChartActionPerformed
    int row = patientTable.getSelectedRow();
    if (row < 0) {
        JOptionPane.showMessageDialog(null, "Please select person", "Warning", JOptionPane.WARNING_MESSAGE);
    } else {//from   w ww  .j a v  a  2 s  .c  o m
        Patient patient = (Patient) patientTable.getValueAt(row, 0);
        for (VitalSign vs : patient.getVitalSignHistory().getVitalSignList()) {
            DefaultCategoryDataset dataset = new DefaultCategoryDataset();
            JPanel chartJPanel = new JPanel();
            dataset.setValue(vs.getRespiratoryRate(), "RR", "Respiratory Rate");
            dataset.setValue(vs.getHeartRate(), "HR", "Heart Rate");
            dataset.setValue(vs.getBloodPressure(), "BP", "BP");
            dataset.setValue(vs.getWeight(), "WT", "Weight");
            JFreeChart chart = ChartFactory.createBarChart("Vital Sign", "Vital Sign", "Values", dataset);
            ChartFrame frame = new ChartFrame("Bar chart for Vital Sign", chart);
            ChartPanel chartPanel = new ChartPanel(chart);
            chartPanel.setDomainZoomable(true);
            chartJPanel.setLayout(new BorderLayout());
            chartJPanel.add(chartPanel, BorderLayout.NORTH);
            frame.setVisible(true);
            frame.setSize(500, 300);

        }
    }

    // TODO add your handling code here:
}

From source file:org.jfree.graphics2d.demo.SVGChartWithAnnotationsDemo1.java

private static JFreeChart createBarChart() {
    DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    dataset.addValue(10.0, "R1", "Q1");
    dataset.addValue(7.0, "R1", "Q2");
    dataset.addValue(8.0, "R1", "Q3");
    dataset.addValue(4.0, "R1", "Q4");
    dataset.addValue(10.6, "R2", "Q1");
    dataset.addValue(6.1, "R2", "Q2");
    dataset.addValue(8.5, "R2", "Q3");
    dataset.addValue(4.3, "R2", "Q4");
    JFreeChart chart = ChartFactory.createBarChart("Sales 2008", null, null, dataset);
    chart.removeLegend();/*from   www  .  ja va  2  s  .c  o  m*/
    chart.setBackgroundPainter(null);
    chart.getPlot().setBackgroundPainter(new ColorPainter(new Color(200, 200, 255, 60)));
    return chart;
}