Package com.google.refine.browsing.util

Examples of com.google.refine.browsing.util.NumericBinIndex


        if (columnName_x.length() > 0) {
            Column x_column = project.columnModel.getColumnByName(columnName_x);
            if (x_column != null) {
                columnIndex_x = x_column.getCellIndex();
               
                NumericBinIndex index_x = ScatterplotFacet.getBinIndex(project, x_column, eval_x, expression_x);
                min_x = index_x.getMin();
                max_x = index_x.getMax();
            } else {
                errorMessage_x = "No column named " + columnName_x;
            }
        } else {
            columnIndex_x = -1;
        }
       
        try {
            eval_x = MetaParser.parse(expression_x);
        } catch (ParsingException e) {
            errorMessage_x = e.getMessage();
        }
       
        columnName_y = o.getString(Y_COLUMN_NAME);
        expression_y = o.getString(Y_EXPRESSION);
       
        if (columnName_y.length() > 0) {
            Column y_column = project.columnModel.getColumnByName(columnName_y);
            if (y_column != null) {
                columnIndex_y = y_column.getCellIndex();
               
                NumericBinIndex index_y = ScatterplotFacet.getBinIndex(project, y_column, eval_y, expression_y);
                min_y = index_y.getMin();
                max_y = index_y.getMax();
            } else {
                errorMessage_y = "No column named " + columnName_y;
            }
        } else {
            columnIndex_y = -1;
View Full Code Here


    @Override
    public void computeChoices(Project project, FilteredRows filteredRows) {
        if (eval_x != null && eval_y != null && errorMessage_x == null && errorMessage_y == null) {
            Column column_x = project.columnModel.getColumnByCellIndex(columnIndex_x);
            NumericBinIndex index_x = getBinIndex(project, column_x, eval_x, expression_x, "row-based");
           
            Column column_y = project.columnModel.getColumnByCellIndex(columnIndex_y);
            NumericBinIndex index_y = getBinIndex(project, column_y, eval_y, expression_y, "row-based");

            retrieveDataFromBinIndices(index_x, index_y);
           
            if (IMAGE_URI) {
                if (index_x.isNumeric() && index_y.isNumeric()) {
                    ScatterplotDrawingRowVisitor drawer = new ScatterplotDrawingRowVisitor(
                      columnIndex_x, columnIndex_y, min_x, max_x, min_y, max_y,
                      size, dim_x, dim_y, rotation, dot, color
                    );
                    filteredRows.accept(project, drawer);
View Full Code Here

   
    @Override
    public void computeChoices(Project project, FilteredRecords filteredRecords) {
        if (eval_x != null && eval_y != null && errorMessage_x == null && errorMessage_y == null) {
            Column column_x = project.columnModel.getColumnByCellIndex(columnIndex_x);
            NumericBinIndex index_x = getBinIndex(project, column_x, eval_x, expression_x, "record-based");
           
            Column column_y = project.columnModel.getColumnByCellIndex(columnIndex_y);
            NumericBinIndex index_y = getBinIndex(project, column_y, eval_y, expression_y, "record-based");
           
            retrieveDataFromBinIndices(index_x, index_y);
           
            if (IMAGE_URI) {
                if (index_x.isNumeric() && index_y.isNumeric()) {
                    ScatterplotDrawingRowVisitor drawer = new ScatterplotDrawingRowVisitor(
                      columnIndex_x, columnIndex_y, min_x, max_x, min_y, max_y,
                      size, dim_x, dim_y, rotation, dot, color
                    );
                    filteredRecords.accept(project, drawer);
View Full Code Here

                eval = MetaParser.parse(expression);
            } catch (ParsingException e) {
                logger.warn("Error parsing expression",e);
            }
        }
        NumericBinIndex index = (NumericBinIndex) column.getPrecompute(key);
        if (index == null) {
            index = "row-based".equals(mode) ?
                    new NumericBinRowIndex(project, new ExpressionBasedRowEvaluable(column.getName(), column.getCellIndex(), eval)) :
                        new NumericBinRecordIndex(project, new ExpressionBasedRowEvaluable(column.getName(), column.getCellIndex(), eval));
View Full Code Here

        if (_eval != null && _errorMessage == null) {
            RowEvaluable rowEvaluable = getRowEvaluable(project);
           
            Column column = project.columnModel.getColumnByCellIndex(_cellIndex);
            String key = "numeric-bin:row-based:" + _expression;
            NumericBinIndex index = (NumericBinIndex) column.getPrecompute(key);
            if (index == null) {
                index = new NumericBinRowIndex(project, rowEvaluable);
                column.setPrecompute(key, index);
            }
           
View Full Code Here

        if (_eval != null && _errorMessage == null) {
            RowEvaluable rowEvaluable = getRowEvaluable(project);
           
            Column column = project.columnModel.getColumnByCellIndex(_cellIndex);
            String key = "numeric-bin:record-based:" + _expression;
            NumericBinIndex index = (NumericBinIndex) column.getPrecompute(key);
            if (index == null) {
                index = new NumericBinRecordIndex(project, rowEvaluable);
                column.setPrecompute(key, index);
            }
           
View Full Code Here

            eval_y = MetaParser.parse(expression_y);
        } catch (ParsingException e) {
            logger.warn("error parsing expression", e);
        }
       
        NumericBinIndex index_x = null;
        NumericBinIndex index_y = null;
       
        String col_x_name = o.getString(ScatterplotFacet.X_COLUMN_NAME);
        Column column_x = project.columnModel.getColumnByName(col_x_name);
        if (column_x != null) {
            columnIndex_x = column_x.getCellIndex();
            index_x = ScatterplotFacet.getBinIndex(project, column_x, eval_x, expression_x);
            min_x = index_x.getMin();
            max_x = index_x.getMax();
        }

        String col_y_name = o.getString(ScatterplotFacet.Y_COLUMN_NAME);
        Column column_y = project.columnModel.getColumnByName(col_y_name);
        if (column_y != null) {
            columnIndex_y = column_y.getCellIndex();
            index_y = ScatterplotFacet.getBinIndex(project, column_y, eval_y, expression_y);
            min_y = index_y.getMin();
            max_y = index_y.getMax();
        }
       
        if (index_x != null && index_y != null && index_x.isNumeric() && index_y.isNumeric()) {
            ScatterplotDrawingRowVisitor drawer = new ScatterplotDrawingRowVisitor(
                columnIndex_x, columnIndex_y, min_x, max_x, min_y, max_y,
                size, dim_x, dim_y, rotation, dot, color
            );
           
View Full Code Here

        try {
            eval = MetaParser.parse(expression);
        } catch (ParsingException e) {
            // this should never happen
        }
        NumericBinIndex index = (NumericBinIndex) column.getPrecompute(key);
        if (index == null) {
            index = new NumericBinRowIndex(project, new ExpressionBasedRowEvaluable(column.getName(), column.getCellIndex(), eval));
            column.setPrecompute(key, index);
        }
        return index;
View Full Code Here

        }
        return index;
    }
   
    private void write(Project project, Column column, JSONWriter writer) throws JSONException {
        NumericBinIndex columnIndex = getBinIndex(project, column);
        if (columnIndex != null) {
            writer.key("name");
            writer.value(column.getName());
            boolean is_numeric = columnIndex.isNumeric();
            writer.key("is_numeric");
            writer.value(is_numeric);
            writer.key("numeric_row_count");
            writer.value(columnIndex.getNumericRowCount());
            writer.key("non_numeric_row_count");
            writer.value(columnIndex.getNonNumericRowCount());
            writer.key("error_row_count");
            writer.value(columnIndex.getErrorRowCount());
            writer.key("blank_row_count");
            writer.value(columnIndex.getBlankRowCount());
            if (is_numeric) {
                writer.key("min");
                writer.value(columnIndex.getMin());
                writer.key("max");
                writer.value(columnIndex.getMax());
                writer.key("step");
                writer.value(columnIndex.getStep());
            }
        } else {
            writer.key("error");
            writer.value("error finding numeric information on the '" + column.getName() + "' column");
        }
View Full Code Here

TOP

Related Classes of com.google.refine.browsing.util.NumericBinIndex

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.