Example usage for org.jfree.data DefaultKeyedValues DefaultKeyedValues

List of usage examples for org.jfree.data DefaultKeyedValues DefaultKeyedValues

Introduction

In this page you can find the example usage for org.jfree.data DefaultKeyedValues DefaultKeyedValues.

Prototype

public DefaultKeyedValues() 

Source Link

Document

Creates a new collection (initially empty).

Usage

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

public static CategoryDataset[] createDatasets() {
    DefaultKeyedValues defaultkeyedvalues = new DefaultKeyedValues();
    defaultkeyedvalues.addValue("C", new Integer(4843));
    defaultkeyedvalues.addValue("C++", new Integer(2098));
    defaultkeyedvalues.addValue("C#", new Integer(26));
    defaultkeyedvalues.addValue("Java", new Integer(1901));
    defaultkeyedvalues.addValue("Perl", new Integer(2507));
    defaultkeyedvalues.addValue("PHP", new Integer(1689));
    defaultkeyedvalues.addValue("Python", new Integer(948));
    defaultkeyedvalues.addValue("Ruby", new Integer(100));
    defaultkeyedvalues.addValue("SQL", new Integer(263));
    defaultkeyedvalues.addValue("Unix Shell", new Integer(485));
    defaultkeyedvalues.sortByValues(SortOrder.DESCENDING);
    org.jfree.data.KeyedValues keyedvalues = DataUtilities.getCumulativePercentages(defaultkeyedvalues);
    CategoryDataset categorydataset = DatasetUtilities.createCategoryDataset("Languages", defaultkeyedvalues);
    CategoryDataset categorydataset1 = DatasetUtilities.createCategoryDataset("Cumulative", keyedvalues);
    return (new CategoryDataset[] { categorydataset, categorydataset1 });
}

From source file:net.footballpredictions.footballstats.swing.ResultsPieChart.java

/**
 * Updates the relative sizes of the pie chart segments.
 *///from  w w w.  j av a2s. c  o  m
public void updateGraph(int won, int drawn, int lost) {
    DefaultKeyedValues values = new DefaultKeyedValues();
    values.addValue(messageResources.getString("headToHead.won"), won);
    values.addValue(messageResources.getString("headToHead.drawn"), drawn);
    values.addValue(messageResources.getString("headToHead.lost"), lost);
    PieDataset dataSet = new DefaultPieDataset(values);

    JFreeChart chart = ChartFactory.createPieChart(title, dataSet, false, // Legend.
            true, // Tooltips.
            false); // URLs.
    PiePlot plot = (PiePlot) chart.getPlot();
    plot.setInteriorGap(0);
    plot.setSectionPaint(0, Colours.WIN);
    plot.setSectionPaint(1, Colours.DRAW);
    plot.setSectionPaint(2, Colours.DEFEAT);
    plot.setBackgroundPaint(null);
    plot.setOutlinePaint(null);
    plot.setLabelGenerator(null);
    plot.setToolTipGenerator(new StandardPieToolTipGenerator("{0} {1} ({2})"));
    setChart(chart);
}

From source file:it.eng.spagobi.engines.chart.bo.charttypes.others.CumulativeCurveChart.java

public DatasetMap calculateValue() throws Exception {

    logger.debug("IN");
    String res = DataSetAccessFunctions.getDataSetResultFromId(profile, getData(), parametersObject);

    SourceBean sbRows = SourceBean.fromXMLString(res);
    SourceBean sbRow = (SourceBean) sbRows.getAttribute("ROW");
    List listAtts = sbRow.getContainedAttributes();

    DefaultKeyedValues keyedValues = new DefaultKeyedValues();

    for (Iterator iterator = listAtts.iterator(); iterator.hasNext();) {
        SourceBeanAttribute att = (SourceBeanAttribute) iterator.next();
        String name = att.getKey();
        String valueS = (String) att.getValue();

        //try Double and Integer Conversion

        Double valueD = null;/*from   w w  w.j  a v a 2s.com*/
        try {
            valueD = Double.valueOf(valueS);
        } catch (Exception e) {
        }

        Integer valueI = null;
        if (valueD == null) {
            valueI = Integer.valueOf(valueS);
        }

        if (name != null && valueD != null) {
            keyedValues.addValue(name, valueD);
        } else if (name != null && valueI != null) {
            keyedValues.addValue(name, valueI);
        }
    }
    keyedValues.sortByValues(sortOrder); //let user choose

    KeyedValues cumulative = DataUtilities.getCumulativePercentages(keyedValues);

    CategoryDataset dataset = DatasetUtilities.createCategoryDataset("Languages", keyedValues);
    CategoryDataset dataset2 = DatasetUtilities.createCategoryDataset("Cumulative", cumulative);

    logger.debug("OUT");
    DatasetMap datasets = new DatasetMap();
    datasets.addDataset("1", dataset);
    datasets.addDataset("2", dataset2);

    return datasets;

}

From source file:org.datacleaner.widgets.result.UniqueKeyCheckAnalyzerResultSwingRenderer.java

@Override
public JComponent render(UniqueKeyCheckAnalyzerResult result) {
    final int nullCount = result.getNullCount();
    final int nonUniqueCount = result.getNonUniqueCount();

    final DefaultKeyedValues keyedValues = new DefaultKeyedValues();
    keyedValues.addValue("Unique keys", result.getUniqueCount());

    final List<Title> subTitles = new ArrayList<Title>();
    subTitles.add(new ShortTextTitle("Row count: " + result.getRowCount()));
    subTitles.add(new ShortTextTitle("Unique key count: " + result.getUniqueCount()));

    if (nonUniqueCount > 0) {
        keyedValues.addValue("Non-unique keys", nonUniqueCount);
        subTitles.add(new ShortTextTitle("Non-unique key count: " + nonUniqueCount));
    }//from w w  w  .  j  a  v a  2  s  . co m

    final String title;
    if (nullCount == 0) {
        title = "Unique and non-unique keys";
    } else {
        keyedValues.addValue(LabelUtils.NULL_LABEL, nullCount);
        title = "Unique, non-unique and <null> keys";
        subTitles.add(new ShortTextTitle("<null> key count: " + result.getNullCount()));
    }

    final DefaultPieDataset dataset = new DefaultPieDataset(keyedValues);
    final JFreeChart chart = ChartFactory.createRingChart(title, dataset, true, true, false);

    chart.setSubtitles(subTitles);

    ChartUtils.applyStyles(chart);
    ChartPanel chartPanel = ChartUtils.createPanel(chart, false);

    final DCPanel leftPanel = new DCPanel();
    leftPanel.setLayout(new VerticalLayout());
    leftPanel.add(WidgetUtils.decorateWithShadow(chartPanel));

    final Map<String, Integer> samples = result.getNonUniqueSamples();
    if (samples == null || samples.isEmpty()) {
        return leftPanel;
    }

    final DefaultTableModel samplesTableModel = new DefaultTableModel(new String[] { "Key", "Count" }, 0);
    for (final Entry<String, Integer> entry : samples.entrySet()) {
        final String key = entry.getKey();
        final Integer count = entry.getValue();
        samplesTableModel.addRow(new Object[] { key, count });
    }
    final DCTable samplesTable = new DCTable(samplesTableModel);

    final DCPanel rightPanel = new DCPanel();
    rightPanel.setLayout(new BorderLayout());
    rightPanel.add(DCLabel.dark("Sample non-unique keys:"));
    rightPanel.add(samplesTable.toPanel(), BorderLayout.CENTER);

    final JSplitPane split = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
    split.setOpaque(false);
    split.add(leftPanel);
    split.add(rightPanel);
    split.setDividerLocation(550);

    return split;
}

From source file:nextapp.echo2.chart.testapp.testscreen.PieChartTest.java

public PieChartTest() {
    super(SplitPane.ORIENTATION_HORIZONTAL, new Extent(250, Extent.PX));
    setStyleName("DefaultResizable");

    ButtonColumn controlsColumn = new ButtonColumn();
    controlsColumn.setStyleName("TestControlsColumn");
    add(controlsColumn);/* www  .  j  av a  2s .c o  m*/

    DefaultKeyedValues values = new DefaultKeyedValues();
    values.addValue("Widgets", 500.2);
    values.addValue("Cubits", 216.0);
    values.addValue("Zonkits", 125.9);

    final DefaultPieDataset pieDataset = new DefaultPieDataset(new DefaultPieDataset(values));
    PiePlot piePlot = new PiePlot(pieDataset);

    final ChartDisplay chartDisplay = new ChartDisplay(piePlot);
    add(chartDisplay);

    controlsColumn.addButton("Set Width = 800px", new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            synchronized (chartDisplay) {
                chartDisplay.setWidth(new Extent(800));
            }
        }
    });

    controlsColumn.addButton("Set Width = null", new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            synchronized (chartDisplay) {
                chartDisplay.setWidth(null);
            }
        }
    });

    controlsColumn.addButton("Set Height = 600px", new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            synchronized (chartDisplay) {
                chartDisplay.setHeight(new Extent(600));
            }
        }
    });

    controlsColumn.addButton("Set Height = null", new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            synchronized (chartDisplay) {
                chartDisplay.setHeight(null);
            }
        }
    });

    controlsColumn.addButton("Update a Value", new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            synchronized (chartDisplay) {
                pieDataset.setValue("Cubits", Math.random() * 500);
            }
        }
    });
}

From source file:org.eobjects.datacleaner.widgets.result.UniqueKeyCheckAnalyzerResultSwingRenderer.java

@Override
public JComponent render(UniqueKeyCheckAnalyzerResult result) {
    final int nullCount = result.getNullCount();
    final int nonUniqueCount = result.getNonUniqueCount();

    final DefaultKeyedValues keyedValues = new DefaultKeyedValues();
    keyedValues.addValue("Unique keys", result.getUniqueCount());

    final List<Title> subTitles = new ArrayList<Title>();
    subTitles.add(new ShortTextTitle("Row count: " + result.getRowCount()));
    subTitles.add(new ShortTextTitle("Unique key count: " + result.getUniqueCount()));

    if (nonUniqueCount > 0) {
        keyedValues.addValue("Non-unique keys", nonUniqueCount);
        subTitles.add(new ShortTextTitle("Non-unique key count: " + nonUniqueCount));
    }//from w w w  . j av  a 2  s . c  o  m

    final String title;
    if (nullCount == 0) {
        title = "Unique and non-unique keys";
    } else {
        keyedValues.addValue(LabelUtils.NULL_LABEL, nullCount);
        title = "Unique, non-unique and <null> keys";
        subTitles.add(new ShortTextTitle("<null> key count: " + result.getNullCount()));
    }

    final DefaultPieDataset dataset = new DefaultPieDataset(keyedValues);
    final JFreeChart chart = ChartFactory.createRingChart(title, dataset, true, true, false);

    chart.setSubtitles(subTitles);

    ChartUtils.applyStyles(chart);
    ChartPanel chartPanel = new ChartPanel(chart);

    final DCPanel leftPanel = new DCPanel();
    leftPanel.setLayout(new VerticalLayout());
    leftPanel.add(WidgetUtils.decorateWithShadow(chartPanel, true, 4));

    final Map<String, Integer> samples = result.getNonUniqueSamples();
    if (samples == null || samples.isEmpty()) {
        return leftPanel;
    }

    final DefaultTableModel samplesTableModel = new DefaultTableModel(new String[] { "Key", "Count" }, 0);
    for (final Entry<String, Integer> entry : samples.entrySet()) {
        final String key = entry.getKey();
        final Integer count = entry.getValue();
        samplesTableModel.addRow(new Object[] { key, count });
    }
    final DCTable samplesTable = new DCTable(samplesTableModel);

    final DCPanel rightPanel = new DCPanel();
    rightPanel.setLayout(new BorderLayout());
    rightPanel.add(DCLabel.dark("Sample non-unique keys:"));
    rightPanel.add(samplesTable.toPanel(), BorderLayout.CENTER);

    final JSplitPane split = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
    split.setOpaque(false);
    split.add(leftPanel);
    split.add(rightPanel);
    split.setDividerLocation(550);

    return split;
}

From source file:org.jfree.data.DefaultKeyedValuesTest.java

/**
 * Checks that a new instance is empty./*from w ww.  j a va 2  s .  c  o m*/
 */
@Test
public void testConstructor() {
    DefaultKeyedValues d = new DefaultKeyedValues();
    assertEquals(0, d.getItemCount());
}

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

/**
 * Creates a new demo instance./*from  w ww.  ja va2  s  . com*/
 *
 * @param title  the frame title.
 */
public ParetoChartDemo(final String title) {

    super(title);

    final DefaultKeyedValues data = new DefaultKeyedValues();
    data.addValue("C", new Integer(4843));
    data.addValue("C++", new Integer(2098));
    data.addValue("C#", new Integer(26));
    data.addValue("Java", new Integer(1901));
    data.addValue("Perl", new Integer(2507));
    data.addValue("PHP", new Integer(1689));
    data.addValue("Python", new Integer(948));
    data.addValue("Ruby", new Integer(100));
    data.addValue("SQL", new Integer(263));
    data.addValue("Unix Shell", new Integer(485));

    data.sortByValues(SortOrder.DESCENDING);
    final KeyedValues cumulative = DataUtilities.getCumulativePercentages(data);
    final CategoryDataset dataset = DatasetUtilities.createCategoryDataset("Languages", data);

    // create the chart...
    final JFreeChart chart = ChartFactory.createBarChart("Freshmeat Software Projects", // chart title
            "Language", // domain axis label
            "Projects", // range axis label
            dataset, // data
            PlotOrientation.VERTICAL, true, // include legend
            true, false);

    // NOW DO SOME OPTIONAL CUSTOMISATION OF THE CHART...
    chart.addSubtitle(new TextTitle("By Programming Language"));
    chart.addSubtitle(new TextTitle("As at 5 March 2003"));

    // set the background color for the chart...
    chart.setBackgroundPaint(new Color(0xBBBBDD));

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

    final CategoryAxis domainAxis = plot.getDomainAxis();
    domainAxis.setLowerMargin(0.02);
    domainAxis.setUpperMargin(0.02);

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

    final LineAndShapeRenderer renderer2 = new LineAndShapeRenderer();

    final CategoryDataset dataset2 = DatasetUtilities.createCategoryDataset("Cumulative", cumulative);
    final NumberAxis axis2 = new NumberAxis("Percent");
    axis2.setNumberFormatOverride(NumberFormat.getPercentInstance());
    plot.setRangeAxis(1, axis2);
    plot.setDataset(1, dataset2);
    plot.setRenderer(1, renderer2);
    plot.mapDatasetToRangeAxis(1, 1);

    plot.setDatasetRenderingOrder(DatasetRenderingOrder.REVERSE);
    // OPTIONAL CUSTOMISATION COMPLETED.

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

}

From source file:nextapp.echo.chart.testapp.testscreen.PieChartTest.java

public PieChartTest() {
    super(SplitPane.ORIENTATION_HORIZONTAL, new Extent(250, Extent.PX));
    setStyleName("DefaultResizable");

    ButtonColumn controlsColumn = new ButtonColumn();
    controlsColumn.setStyleName("TestControlsColumn");
    add(controlsColumn);//from  w  w w. j a v a2s .c  o m

    DefaultKeyedValues values = new DefaultKeyedValues();
    values.addValue("Widgets", 500.2);
    values.addValue("Cubits", 216.0);
    values.addValue("Zonkits", 125.9);

    final DefaultPieDataset pieDataset = new DefaultPieDataset(new DefaultPieDataset(values));
    PiePlot piePlot = new PiePlot(pieDataset);
    piePlot.setToolTipGenerator(new StandardPieToolTipGenerator());

    final ChartDisplay chartDisplay = new ChartDisplay(piePlot);
    add(chartDisplay);

    chartDisplay.setActionCommands(new String[] { "Widgets", "Cubits", "Zonkits" });
    chartDisplay.addActionListener(new ActionListener() {

        public void actionPerformed(ActionEvent arg0) {
            WindowPane window = new WindowPane("Chart series clicked", new Extent(300), new Extent(200));
            window.add(new Label("You clicked on " + arg0.getActionCommand()));
            Component contentPane = getParent();
            while (!(contentPane instanceof ContentPane)) {
                contentPane = contentPane.getParent();
            }
            contentPane.add(window);
        }
    });

    ChartPanel chartPanel = new ChartPanel(new JFreeChart(piePlot));
    chartPanel.setRefreshBuffer(true);
    ChartEntity entity = chartPanel.getEntityForPoint(50, 50);
    System.out.println("Entity: " + entity);

    controlsColumn.addButton("Set Width = 800px", new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            synchronized (chartDisplay) {
                chartDisplay.setWidth(new Extent(800));
            }
        }
    });

    controlsColumn.addButton("Set Width = null", new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            synchronized (chartDisplay) {
                chartDisplay.setWidth(null);
            }
        }
    });

    controlsColumn.addButton("Set Height = 600px", new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            synchronized (chartDisplay) {
                chartDisplay.setHeight(new Extent(600));
            }
        }
    });

    controlsColumn.addButton("Set Height = null", new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            synchronized (chartDisplay) {
                chartDisplay.setHeight(null);
            }
        }
    });

    controlsColumn.addButton("Update a Value", new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            synchronized (chartDisplay) {
                pieDataset.setValue("Cubits", Math.random() * 500);
            }
        }
    });
}

From source file:org.jfree.data.DefaultKeyedValuesTest.java

/**
 * Some checks for the getItemCount() method.
 *///from  w  w  w .  j av a 2s.  co  m
@Test
public void testGetItemCount() {
    DefaultKeyedValues d = new DefaultKeyedValues();
    assertEquals(0, d.getItemCount());
    d.addValue("A", 1.0);
    assertEquals(1, d.getItemCount());
    d.addValue("B", 2.0);
    assertEquals(2, d.getItemCount());
    d.clear();
    assertEquals(0, d.getItemCount());
}