Example usage for org.jfree.util TableOrder BY_COLUMN

List of usage examples for org.jfree.util TableOrder BY_COLUMN

Introduction

In this page you can find the example usage for org.jfree.util TableOrder BY_COLUMN.

Prototype

TableOrder BY_COLUMN

To view the source code for org.jfree.util TableOrder BY_COLUMN.

Click Source Link

Document

By column.

Usage

From source file:edu.uara.gui.tableeditor.ChartGenerationFrame.java

/**
 * activate series editor frame (used in change series
 * tool bar button event//from w  w  w.  j ava 2  s  .c o m
 */
private void seriesColorEdit() {
    if (this.pieChartOption.isEnabled()) {
        String tableOrder = cbo_pieDataSelect.getSelectedItem().toString();
        TableOrder tbOrder = null;
        if (tableOrder.equals("Row")) {
            tbOrder = TableOrder.BY_ROW;
        } else {
            tbOrder = TableOrder.BY_COLUMN;
        }
        new SeriesColorEditor(datasetTable, c, table, tbOrder).setVisible(true);
    } else
        new SeriesColorEditor(datasetTable, c, table, TableOrder.BY_ROW).setVisible(true);

}

From source file:edu.uara.gui.tableeditor.ChartGenerationFrame.java

/**
 * group category by adding group key to existing row series labels
 *//*from  www.  j a v a  2 s.com*/
private void groupCategory() {
    if (datasetTable.getTableOrder() == TableOrder.BY_COLUMN) {
        JOptionPane.showMessageDialog(this, "Can not group series when colmn orientation is selected!");
        return;
    }
    int[] rows = this.dataviewTable.getSelectedRows();
    int[] cols = this.dataviewTable.getSelectedColumns();
    String name = null;
    for (int i = 0; i < rows.length; i++) {
        if (rows[i] == 0) {
            JOptionPane.showMessageDialog(this, "Row 1 is not used! please select from row 2 and on");
            return;
        }
    }
    if (cols.length > 1 && cols[0] != 0) {
        JOptionPane.showMessageDialog(this, "Please select only the first column!");
        return;
    } else if (rows.length < 2) {
        JOptionPane.showMessageDialog(this, "Please select at least 2 series to group");
        return;
    } else {
        name = JOptionPane.showInputDialog("Please enter group name!");
        if (name == null)
            return;
        datasetTable.addGroupKey(name);
    }
    for (int row : rows) {

        String currentLabel = datasetTable.getValueAt(row, 0).toString();
        String newLabel = name + " " + currentLabel;
        datasetTable.setValueAt(newLabel, row, 0);

    }
}

From source file:edu.uara.gui.tableeditor.ChartGenerationFrame.java

private void generateBaseDataset() {
    try {//from ww  w  . j av a 2s  .c  o m
        if (this.cbo_barChartTableOrder.isEnabled()) {
            String tableOrder = cbo_barChartTableOrder.getSelectedItem().toString();
            TableOrder tbOrder = null;
            if (tableOrder.equals("Row")) {
                tbOrder = TableOrder.BY_ROW;
                this.baseDataset = DatasetUtilities.createCategoryDataset(datasetTable.getRowLabels(),
                        datasetTable.getColumnLabels(table), datasetTable.getTableContentAsValue(table));

            } else {
                tbOrder = TableOrder.BY_COLUMN;
                this.baseDataset = DatasetUtilities.createCategoryDataset(datasetTable.getColumnLabels(table),
                        datasetTable.getRowLabels(), datasetTable.getTableContentAsValueTranspose(table));
            }
            if (this.opt_subCategory.isSelected() && datasetTable.getGroupKey().length > 0) {
                groupMap = CustomJFreeChartData.generateGroupedMap(baseDataset, datasetTable.getGroupKey());
            }
        } else {
            this.baseDataset = DatasetUtilities.createCategoryDataset(datasetTable.getRowLabels(),
                    datasetTable.getColumnLabels(table), datasetTable.getTableContentAsValue(table));

        }
    } catch (Exception ex) {
        System.out.print("Dataset generation error: " + ex.toString());
        JOptionPane.showMessageDialog(this, ex.getMessage());
        this.baseDataset = DatasetUtilities.createCategoryDataset("series", "",
                datasetTable.getTableContentAsValue(table));
    }

}

From source file:edu.uara.gui.tableeditor.ChartGenerationFrame.java

private void generateChart() {
    //generate Base Dataset (Category Dataset)
    if (datasetTable != null)
        this.generateBaseDataset();

    if (c != null) {
        if (this.splitPane.getTopComponent() == panel) {
            int option = JOptionPane.showConfirmDialog(this, "Create new chart?\r\n", "Warning",
                    JOptionPane.YES_NO_OPTION);
            if (option == JOptionPane.YES_OPTION) {
                if (this.cmd_saveChart.isEnabled()) {
                    int innerOption = JOptionPane.showConfirmDialog(this,
                            "Current chart is modified. Do you want to save?\r\n", "Warning",
                            JOptionPane.YES_NO_OPTION);
                    if (innerOption == JOptionPane.YES_OPTION)
                        this.saveFigure();
                }// w  w  w  .  j  a v  a2s  .  c om
                this.figure = null;
                this.splitPane.remove(panel);
            } else
                return;

        }
    }

    if (this.pieChartOption.isSelected()) {
        //get series
        PieDataset dataset = null;
        String series = this.cbo_pieDataSeries.getSelectedItem().toString();
        CustomPieChart ch = new CustomPieChart(txt_chartName.getText(), this.opt_legend.isSelected());//legend
        String tableOrder = cbo_pieDataSelect.getSelectedItem().toString();
        TableOrder tbOrder = null;
        if (tableOrder.equals("Row")) {
            tbOrder = TableOrder.BY_ROW;
        } else {
            tbOrder = TableOrder.BY_COLUMN;
        }

        if (this.opt_multiPieCharts.isSelected())//multiple piechart 
        {
            if (this.opt_effect3D.isSelected())
                ch.generateMultiple3DPieChart(baseDataset, tbOrder);
            else
                ch.generateMultiplePieChart(baseDataset, tbOrder);

            if (this.opt_exploded.isSelected()) {
                try {
                    ch.setExplodePercent(this.cbo_explodedSections.getSelectedItem().toString(),
                            Double.parseDouble(this.txt_explodedPercent.getText()));
                } catch (Exception ex) {
                    System.out.println("Error setting exploded section! " + ex.getMessage());
                }
            }
        } else {
            try {
                if (tbOrder == TableOrder.BY_ROW)
                    dataset = DatasetUtilities.createPieDatasetForRow(baseDataset, series);
                else
                    dataset = DatasetUtilities.createPieDatasetForColumn(baseDataset, series);
            } catch (Exception ex) {
                System.out.println("Error with pie dataset, default series is used");
                dataset = DatasetUtilities.createPieDatasetForRow(baseDataset, 0);
            }

            //ch.setIgnoreNullOrZeroValues(true);//ignore null values

            if (opt_effect3D.isSelected()) {
                ch.generate3DPieChart(dataset, series, tbOrder);
            } else {
                ch.generatePieChart(dataset, series, tbOrder);
                //edit exploded parts
                if (this.opt_exploded.isSelected()) {
                    try {
                        ch.setExplodePercent(this.cbo_explodedSections.getSelectedItem().toString(),
                                Double.parseDouble(this.txt_explodedPercent.getText()));
                    } catch (Exception ex) {
                        System.out.println("Error setting exploded section! " + ex.getMessage());
                    }
                }
            }
        }
        ch.setIgnoreNullOrZeroValues(true);//ignore null values
        int labelFormat = cbo_pieSectionLabel.getSelectedIndex();
        ch.setLabelFormat(labelFormat);
        c = ch;
        this.updateStatus("Pie chart has been generated.");
    } else if (this.lineChartOption.isSelected()) {
        // create a chart...
        PlotOrientation orientation;//options for orientation

        if (this.opt_layoutV.isSelected())
            orientation = PlotOrientation.VERTICAL;
        else if (this.opt_layoutH.isSelected())
            orientation = PlotOrientation.HORIZONTAL;
        else
            orientation = PlotOrientation.VERTICAL;

        CustomLineChart ch = new CustomLineChart(this.txt_chartName.getText(), this.txt_DomainLabel.getText(),
                this.txt_RangeLabel.getText(), orientation, this.opt_legend.isSelected());
        if (opt_effect3D.isSelected()) {
            ch.generate3DLineChart(baseDataset);
        } else {
            ch.generateLineChart(baseDataset);
        }

        //apply options
        if (this.opt_showGridline.isSelected()) {
            ch.setGridLineVisible(true);
        } else {
            ch.setGridLineVisible(false);
        }

        c = ch;
        this.updateStatus("Line chart has been generated.");
    } else if (this.BarChartOption.isSelected()) {
        // create a chart...
        PlotOrientation orientation;//options for orientation

        if (this.opt_layoutV.isSelected())
            orientation = PlotOrientation.VERTICAL;
        else if (this.opt_layoutH.isSelected())
            orientation = PlotOrientation.HORIZONTAL;
        else
            orientation = PlotOrientation.VERTICAL;

        CustomBarChart ch = new CustomBarChart(this.txt_chartName.getText(), this.txt_DomainLabel.getText(),
                this.txt_RangeLabel.getText(), orientation, opt_legend.isSelected());
        if (this.opt_subCategory.isSelected()) {
            ch.generateGroupBarChart(baseDataset, groupMap);
            ch.setSubCategoryAxis(txt_DomainLabel.getText(), datasetTable.getGroupKey());
        } else {
            if (opt_effect3D.isSelected()) {
                if (this.opt_effectStacked.isSelected())
                    ch.generate3DStackedBarChart(baseDataset);
                else
                    ch.generate3DBarChart(baseDataset);
            } else {
                if (this.opt_effectStacked.isSelected())
                    ch.generateStackedBarChart(baseDataset);
                else
                    ch.generateBarChart(baseDataset);
            }
        }
        //apply options
        if (this.opt_showGridline.isSelected()) {
            ch.setGridLineVisible(true);
        } else {
            ch.setGridLineVisible(false);
        }
        if (this.opt_showItemLabel.isSelected()) {
            ch.setItemLabelGenerator(txt_itemLabelFormat.getText(),
                    Integer.parseInt(cbo_itemLabelSize.getSelectedItem().toString()));
            ch.setItemLabelVisible(true);
        }
        c = ch;
        this.updateStatus("Bar chart has been generated.");
    } else if (this.combinedChartOption.isSelected()) {
        //not available yet
    } else {
        JOptionPane.showMessageDialog(this, "Please select chart type first!");
        return;
    }

    //c.generate3DStackedBarChart(baseDataset);
    ChartFrame f = c.drawChart("");
    panel = f.getChartPanel();
    splitPane.setDividerLocation(panel.getHeight());
    this.splitPane.setTopComponent(panel);
    //ChartPanel.add(panel);
    //panel.setSize(500, splitPane.getWidth());

    if (panel != null)
        panel.addHierarchyBoundsListener(new java.awt.event.HierarchyBoundsListener() {

            @Override
            public void ancestorResized(java.awt.event.HierarchyEvent evt) {
                panelAncestorResized(evt);
            };

            @Override
            public void ancestorMoved(HierarchyEvent e) {

            }
        });

    this.cmd_saveChart.setEnabled(true);
    this.cmd_changeSeriesColor.setEnabled(true);
    this.cmd_generateChart.setEnabled(false);

}