Example usage for org.jfree.chart JFreeChart getCategoryPlot

List of usage examples for org.jfree.chart JFreeChart getCategoryPlot

Introduction

In this page you can find the example usage for org.jfree.chart JFreeChart getCategoryPlot.

Prototype

public CategoryPlot getCategoryPlot() 

Source Link

Document

Returns the plot cast as a CategoryPlot .

Usage

From source file:j2se.jfreechart.barchart.BarChartDemo6.java

/**
 * Creates a new demo.//from w  ww .  j a va 2s. c o  m
 *
 * @param title  the frame title.
 */
public BarChartDemo6(final String title) {

    super(title);

    // create a dataset...
    final DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    dataset.addValue(83.0, "First", "Factor 1");

    // create the chart...
    final JFreeChart chart = ChartFactory.createBarChart(null, // chart title
            "Category", // domain axis label
            "Score (%)", // range axis label
            dataset, // data
            PlotOrientation.HORIZONTAL, false, // include legend
            true, false);

    // NOW DO SOME OPTIONAL CUSTOMISATION OF THE CHART...
    chart.setBackgroundPaint(Color.yellow); // not seen
    final CategoryPlot plot = chart.getCategoryPlot();
    //        plot.setInsets(new Insets(0, 0, 0, 0));
    plot.setRangeGridlinesVisible(false);
    final CategoryAxis domainAxis = plot.getDomainAxis();
    domainAxis.setLowerMargin(0.20);
    domainAxis.setUpperMargin(0.20);
    domainAxis.setVisible(false);
    final NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
    rangeAxis.setRange(0.0, 100.0);
    rangeAxis.setVisible(false);
    // OPTIONAL CUSTOMISATION COMPLETED.

    // add the chart to a panel...
    final ChartPanel chartPanel = new ChartPanel(chart);
    chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));
    setContentPane(chartPanel);

}

From source file:edu.coeia.charts.BarChartPanel.java

private JFreeChart createChart(final CategoryDataset dataset, String str) {
    final JFreeChart chart = ChartFactory.createBarChart3D(str, // chart title
            "Names", // domain axis label
            "Values(%)", // range axis label
            dataset, // data
            PlotOrientation.HORIZONTAL, // orientation
            true, // include legend
            true, // tooltips
            false // urls
    );// ww  w  . ja va  2  s.  c  o m

    final CategoryPlot plot = chart.getCategoryPlot();
    plot.setForegroundAlpha(1.0f);

    // left align the category labels...
    final CategoryAxis axis = plot.getDomainAxis();
    final CategoryLabelPositions p = axis.getCategoryLabelPositions();

    final CategoryLabelPosition left = new CategoryLabelPosition(RectangleAnchor.LEFT,
            TextBlockAnchor.CENTER_LEFT, TextAnchor.CENTER_LEFT, 0.0, CategoryLabelWidthType.RANGE, 0.30f);
    axis.setCategoryLabelPositions(CategoryLabelPositions.replaceLeftPosition(p, left));

    // change the auto tick unit selection to integer units only...
    final NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
    rangeAxis.setRange(from, to);
    rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());

    return chart;
}

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);/*from  w w w.j a  v a 2 s . c o  m*/

    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:edu.ucla.stat.SOCR.chart.demo.BarChart3DDemo2.java

/**
 * Creates a chart.//from  www .ja  v  a  2 s .com
 * 
 * @param dataset  the dataset.
 * 
 * @return The chart.
 */
protected JFreeChart createChart(CategoryDataset dataset) {

    JFreeChart chart = ChartFactory.createBarChart3D(chartTitle, // chart title
            domainLabel, // domain axis label
            rangeLabel, // range axis label
            dataset, // data
            PlotOrientation.HORIZONTAL, // orientation
            !legendPanelOn, // include legend
            true, // tooltips
            false // urls
    );

    CategoryPlot plot = chart.getCategoryPlot();
    plot.setForegroundAlpha(1.0f);

    // left align the category labels...
    CategoryAxis axis = plot.getDomainAxis();
    CategoryLabelPositions p = axis.getCategoryLabelPositions();

    CategoryLabelPosition left = new CategoryLabelPosition(RectangleAnchor.LEFT, TextBlockAnchor.CENTER_LEFT,
            TextAnchor.CENTER_LEFT, 0.0, CategoryLabelWidthType.RANGE, 0.30f);
    axis.setCategoryLabelPositions(CategoryLabelPositions.replaceLeftPosition(p, left));

    BarRenderer3D renderer = (BarRenderer3D) plot.getRenderer();
    renderer.setLegendItemLabelGenerator(new SOCRCategorySeriesLabelGenerator());
    setCategorySummary(dataset);
    return chart;

}

From source file:net.sourceforge.processdash.ui.web.CGIChartBase.java

protected Axis getAxis(JFreeChart chart, PlotOrientation dir) {
    try {/*from  w  w  w . jav  a 2 s .  co  m*/
        CategoryPlot p = chart.getCategoryPlot();
        if (dir.equals(p.getOrientation()))
            return p.getRangeAxis();
        else
            return p.getDomainAxis();
    } catch (Exception e) {
        return null;
    }
}

From source file:fi.smaa.jsmaa.gui.SMAA2GUIFactory.java

@Override
public ViewBuilder buildView(Object o) {
    if (o == treeModel.getCentralWeightsNode()) {
        JFreeChart chart = null;
        if (isChartDrawable()) {
            chart = ChartFactory.createLineChart("", "Criterion", "Central Weight", centralWeightsDataset,
                    PlotOrientation.VERTICAL, true, true, false);
            LineAndShapeRenderer renderer = new LineAndShapeRenderer(true, true);
            chart.getCategoryPlot().setRenderer(renderer);
        }/*from w  w w .  ja v  a 2  s.c  om*/
        ResultsTable table = new ResultsTable(centralWeightsTM);
        table.setAutoCreateRowSorter(true);
        table.setDefaultRenderer(Object.class, new CentralWeightsCellRenderer(1.0));
        table.getTableHeader().setToolTipText("CF = Confidence Factor");
        return new ViewWithHeader("Central weight vectors",
                new ResultsView(parent, table, chart, FileNames.ICON_SCRIPT));
    } else if (o == treeModel.getRankAcceptabilitiesNode()) {
        JFreeChart chart = null;
        if (isChartDrawable()) {
            chart = ChartFactory.createStackedBarChart("", "Alternative", "Rank Acceptability",
                    rankAcceptabilitiesDataset, PlotOrientation.VERTICAL, true, true, false);
            chart.getCategoryPlot().getRangeAxis().setUpperBound(1.0);
        }
        ResultsTable table = new ResultsTable(rankAcceptabilitiesTM);
        table.setAutoCreateRowSorter(true);
        table.setDefaultRenderer(Object.class, new ResultsCellColorRenderer(1.0));
        table.getTableHeader()
                .setToolTipText("Ranks in descending order, 1 is the best, 2 the second best, etc.");
        return new ViewWithHeader("Rank acceptability indices",
                new ResultsView(parent, table, chart, FileNames.ICON_SCRIPT));
    } else {
        return super.buildView(o);
    }
}

From source file:UserInterface.SecurityAdministratorRole.SecurityAdministratorWorkArea.java

private void userJButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_userJButton1ActionPerformed
    // TODO add your handling code here:
    //        IncidentsAnalysisJPanel incidentsAnalysisJPanel = new IncidentsAnalysisJPanel(userProcessContainer, securityAuthorityEnterprise);
    //        userProcessContainer.add("IncidentsAnalysisJPanel", incidentsAnalysisJPanel);
    //        CardLayout layout = (CardLayout) userProcessContainer.getLayout();
    //        layout.next(userProcessContainer);
    //        // www  .jav  a 2s  . c  o m
    //        
    // SimpleDateFormat dateFormatter = new SimpleDateFormat("EEE, MMM d, yyyy");  
    DefaultCategoryDataset dataset = new DefaultCategoryDataset();

    Date today = new Date();
    Date weekBefore = new Date();
    weekBefore.setTime(today.getTime() + (long) (-7) * 1000 * 60 * 60 * 24);

    long todayDate = (today.getTime()) / (1000 * 60 * 60 * 24);
    long weekDate = (weekBefore.getTime()) / (1000 * 60 * 60 * 24);
    //ArrayList<Date> incidentDatesList = new ArrayList<Date>();

    int cong1 = 0;
    int cong2 = 0;
    int cong3 = 0;
    int cong4 = 0;

    int counter1 = 0;
    int counter2 = 0;
    int counter3 = 0;
    int counter4 = 0;

    for (WorkRequest request : securityAuthorityEnterprise.getWorkQueue().getWorkRequestList()) {
        IncidentWorkRequest incidentRequest = (IncidentWorkRequest) request;
        long requestDate = (request.getRequestDate().getTime()) / (1000 * 60 * 60 * 24);
        if (requestDate >= weekDate && requestDate <= todayDate) {

            if (incidentRequest.getTypeOfEmergency().equals("Medical")) {
                cong1 += incidentRequest.getCrowdednessLevel();
                counter1++;
            } else if (incidentRequest.getTypeOfEmergency().equals("Accidental")) {
                cong2 += incidentRequest.getCrowdednessLevel();
                counter2++;
            } else if (incidentRequest.getTypeOfEmergency().equals("Security")) {
                cong3 += incidentRequest.getCrowdednessLevel();
                counter3++;
            } else {
                cong4 += incidentRequest.getCrowdednessLevel();
                counter4++;
            }

        }
    }

    if (counter4 == 0) {
        counter4 = 1;
    }
    if (counter3 == 0) {
        counter3 = 1;
    }
    if (counter2 == 0) {
        counter2 = 1;
    }
    if (counter1 == 0) {
        counter1 = 1;
    }

    dataset.setValue(cong1 / counter1, "Incident Types", "Medical");
    dataset.setValue(cong2 / counter2, "Incident Types", "Accidental");
    dataset.setValue(cong3 / counter3, "Incident Types", "Security");
    dataset.setValue(cong4 / counter4, "Incident Types", "Other");

    JFreeChart chart = ChartFactory.createBarChart("Incident Type v/s Average Congestion", "Incident Types",
            "Average Congestion Levels", dataset, PlotOrientation.VERTICAL, false, true, false);
    CategoryPlot plot = chart.getCategoryPlot();
    plot.setRangeGridlinePaint(Color.BLUE);
    ChartFrame frame = new ChartFrame("Bar Chart for Congestion Analysis", chart);
    frame.setVisible(true);
    frame.setSize(750, 750);

}

From source file:edu.ucla.stat.SOCR.chart.demo.StackedBarChartDemo3.java

/**
 * Creates a sample chart./*from  w ww .  j a  v a 2  s  . c om*/
 * 
 * @param dataset  the dataset for the chart.
 * 
 * @return a sample chart.
 */
protected JFreeChart createChart(CategoryDataset dataset) {

    JFreeChart chart = ChartFactory.createStackedBarChart(chartTitle, // chart title
            domainLabel, // domain axis label
            rangeLabel, // range axis label
            dataset, // data
            PlotOrientation.VERTICAL, // the plot orientation
            !legendPanelOn, // legend
            false, // tooltips
            false // urls
    );
    CategoryPlot plot = chart.getCategoryPlot();
    CategoryItemRenderer renderer = new ExtendedStackedBarRenderer();
    renderer.setBaseItemLabelsVisible(true);
    renderer.setBaseItemLabelGenerator(new StandardCategoryItemLabelGenerator());
    renderer.setBaseToolTipGenerator(new StandardCategoryToolTipGenerator());
    plot.setRenderer(renderer);

    ValueAxis rangeAxis = plot.getRangeAxis();
    rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
    rangeAxis.setLowerMargin(0.15);
    rangeAxis.setUpperMargin(0.15);

    StackedBarRenderer renderer2 = (StackedBarRenderer) plot.getRenderer();
    renderer2.setLegendItemLabelGenerator(new SOCRCategorySeriesLabelGenerator());

    setCategorySummary(dataset);
    return chart;

}

From source file:gui.images.ClassHubsPanel.java

/**
 * Sets the distribution of point types to be shown in the column chart.
 *
 * @param pTypes Float array representing the point type distribution.
 *///from  w  w  w. ja  va2s .com
public void setPointTypeDistribution(float[] pTypes) {
    DefaultCategoryDataset hDistDataset = new DefaultCategoryDataset();
    hDistDataset.addValue(pTypes[0], "Examples", "safe");
    hDistDataset.addValue(pTypes[1], "Examples", "borderline");
    hDistDataset.addValue(pTypes[2], "Examples", "rare");
    hDistDataset.addValue(pTypes[3], "Examples", "outlier");
    JFreeChart chart = ChartFactory.createBarChart("Point Type Distribution", "", "", hDistDataset,
            PlotOrientation.VERTICAL, false, true, false);
    ChartPanel chartPanel = new ChartPanel(chart);
    chartPanel.setPreferredSize(new Dimension(316, 240));
    final CategoryPlot plot = chart.getCategoryPlot();
    CategoryItemRenderer renderer = new CustomRenderer();
    plot.setRenderer(renderer);
    pointTypePanel.removeAll();
    pointTypePanel.add(chartPanel);
    pointTypePanel.revalidate();
    pointTypePanel.repaint();
}

From source file:GUI.Statistique.java

private void bilanFinanciereParAns() {
    float firstYear = 0;
    float secondYear = 0;
    float thirdYear = 0;
    float forthYear = 0;
    float fiveYear = 0;
    CommandeDAO commandeDAO = new CommandeDAO();
    List<Commande> commandes = new ArrayList<>();
    commandes = commandeDAO.findAll();// w  ww.  ja v a2 s  . co  m
    for (Commande commande : commandes) {

        if (commande.getDatecommande().getYear() + 1900 == 2016)
            fiveYear += commande.getTotalcommande();
        else if (commande.getDatecommande().getYear() + 1900 == 2015)
            forthYear += commande.getTotalcommande();
        else if (commande.getDatecommande().getYear() + 1900 == 2014)
            thirdYear += commande.getTotalcommande();
        else if (commande.getDatecommande().getYear() + 1900 == 2013)
            secondYear += commande.getTotalcommande();
        else if (commande.getDatecommande().getYear() + 1900 == 2012)
            firstYear += commande.getTotalcommande();
    }
    DefaultCategoryDataset dSet = new DefaultCategoryDataset();
    dSet.addValue(firstYear, "2012", "2012");
    dSet.addValue(secondYear, "2013", "2013");
    dSet.addValue(thirdYear, "2014", "2014");
    dSet.addValue(forthYear, "2015", "2015");
    dSet.addValue(fiveYear, "2016", "2016");

    JFreeChart chart = ChartFactory.createBarChart3D("Rapport financier", "Rvenus", "Montant (DT)", dSet,
            PlotOrientation.VERTICAL, true, true, true);
    chart.setBackgroundPaint(Color.yellow);
    chart.getTitle().setPaint(Color.RED);
    CategoryPlot p = chart.getCategoryPlot();
    p.setRangeGridlinePaint(Color.black);
    ChartPanel cp = new ChartPanel(chart, true, true, true, false, true);
    ChartFrame f = new ChartFrame("try", chart);
    //JFrame f =new JFrame();
    f.setContentPane(cp);
    f.pack();
    //f.setVisible(true);
    // f.setSize(panelRevDep.getWidth()-20,panelRevDep.getHeight()-20);
    // f.setVisible(true);
    // panelRevDep.removeAll();
    //panelRevDep.repaint();
    jPanel3.add(cp);

}