Example usage for org.jfree.data.category CategoryDataset getColumnKey

List of usage examples for org.jfree.data.category CategoryDataset getColumnKey

Introduction

In this page you can find the example usage for org.jfree.data.category CategoryDataset getColumnKey.

Prototype

public Comparable getColumnKey(int column);

Source Link

Document

Returns the column key for a given index.

Usage

From source file:com.rapidminer.gui.plotter.charts.ParetoChartItemLabelGenerator.java

/**
 * Generates the label for an item in a dataset. Note: in the current dataset implementation,
 * each row is a series, and each column contains values for a particular category.
 * //from   ww w.  j a  v a 2 s . c o m
 * @param dataset
 *            the dataset (<code>null</code> not permitted).
 * @param row
 *            the row index (zero-based).
 * @param column
 *            the column index (zero-based).
 * 
 * @return The label (possibly <code>null</code>).
 */
@Override
public String generateLabel(CategoryDataset dataset, int row, int column) {
    String key = (String) dataset.getColumnKey(column);
    return itemLabels.get(key);
}

From source file:lucee.runtime.chart.CategoryToolTipGeneratorImpl.java

public String generateToolTip(CategoryDataset dataset, int row, int column) {
    String r = dataset.getRowKey(row).toString();
    String c = dataset.getColumnKey(column).toString();
    String both = r + "," + c;
    if (StringUtil.isEmpty(r))
        both = c;//from w w  w  .  j a v a  2s .  co  m
    if (StringUtil.isEmpty(c))
        both = r;

    return LabelFormatUtil.format(labelFormat, dataset.getValue(row, column).doubleValue()) + " (" + both + ")";
}

From source file:it.eng.spagobi.engines.chart.bo.charttypes.utils.MyStandardCategoryItemLabelGenerator.java

public String generateLabel(CategoryDataset dataset, int row, int column) {
    logger.debug("IN");
    String category = (String) dataset.getColumnKey(column);
    String serie = (String) dataset.getRowKey(row);

    String index = category + "-" + serie;

    String value = "";
    if (catSerLabel.get(index) != null && !catSerLabel.get(index).equals("")) {
        logger.debug("set label");
        value = (String) catSerLabel.get(index);
    }/*w w  w. j  a va  2 s.  com*/

    logger.debug("OUT");

    return value;
}

From source file:org.xwiki.rendering.internal.macro.chart.source.table.TableCategoryDatasetBuilderTest.java

@Test
public void testBuildCategoryDatasetColumnsSeries() throws Exception {
    String content = "| column 1 | column 2 | column 3 | column 4\n" + "| row 1 | 12 | 13 | 14 \n"
            + "| row 2 | 22 | 23 | 24 \n";
    setUpContentExpectation(content);//from www  .j  a  v  a2s  .c  om

    getDataSource().buildDataset(content, map("type", "line", "range", "B2-D3", "series", "columns"), null);

    ChartModel chartModel = getDataSource().getChartModel();

    Dataset dataset = chartModel.getDataset();

    Assert.assertTrue(dataset instanceof CategoryDataset);
    Assert.assertTrue(chartModel.getAxis(0) instanceof CategoryAxis);
    Assert.assertTrue(chartModel.getAxis(1) instanceof ValueAxis);

    CategoryDataset categoryDataset = (CategoryDataset) dataset;

    Assert.assertTrue(categoryDataset.getColumnKey(0).equals(" row 1 "));
    Assert.assertTrue(categoryDataset.getColumnKey(1).equals(" row 2 "));

    Assert.assertTrue(categoryDataset.getRowKey(0).equals(" column 2 "));
    Assert.assertTrue(categoryDataset.getRowKey(1).equals(" column 3 "));
    Assert.assertTrue(categoryDataset.getRowKey(2).equals(" column 4"));

    Assert.assertTrue(categoryDataset.getValue(0, 0).intValue() == 12);
    Assert.assertTrue(categoryDataset.getValue(1, 0).intValue() == 13);
    Assert.assertTrue(categoryDataset.getValue(2, 0).intValue() == 14);
    Assert.assertTrue(categoryDataset.getValue(0, 1).intValue() == 22);
    Assert.assertTrue(categoryDataset.getValue(1, 1).intValue() == 23);
    Assert.assertTrue(categoryDataset.getValue(2, 1).intValue() == 24);
}

From source file:com.manydesigns.portofino.chart.ChartBarUrlGenerator.java

public String generateURL(CategoryDataset dataset, int series, int category) {
    ComparableWrapper c1 = (ComparableWrapper) dataset.getRowKey(series);
    ComparableWrapper c2 = (ComparableWrapper) dataset.getColumnKey(category);
    value.dataset = dataset;/*from  ww  w .j a v a 2s.  c  o m*/
    value.series = c1.getObject();
    value.category = c2.getObject();
    return format.format(value);
}

From source file:org.pentaho.plugin.jfreereport.reportcharts.FormulaCategoryTooltipGenerator.java

/**
 * Generates the tool tip text for an item in a dataset.  Note: in the current dataset implementation, each row is a
 * series, and each column contains values for a particular category.
 *
 * @param dataset  the dataset (<code>null</code> not permitted).
 * @param series   the series (zero-based index).
 * @param category the category./*from   w  w w.  j a va  2s . c  om*/
 * @return The tooltip text (possibly <code>null</code>).
 */
public String generateToolTip(final CategoryDataset dataset, final int series, final int category) {
    try {
        final Comparable seriesKey = dataset.getRowKey(series);
        final Comparable categoryKey = dataset.getColumnKey(category);
        final Object[] categoryKeys = dataset.getColumnKeys().toArray();
        final Object[] seriesKeys = dataset.getRowKeys().toArray();
        final Object value = dataset.getValue(series, category);

        final Object[] values = new Object[] { seriesKey, categoryKey, IntegerCache.getInteger(series),
                IntegerCache.getInteger(category), seriesKeys, categoryKeys, value };
        final StaticDataRow datarow = new StaticDataRow(ADDITIONAL_COLUMN_KEYS, values);
        final WrapperExpressionRuntime wrapper = new WrapperExpressionRuntime(datarow, runtime);
        formulaExpression.setRuntime(wrapper);
        final Object o = formulaExpression.getValue();
        if (o == null) {
            return null;
        }
        return String.valueOf(o);
    } finally {
        formulaExpression.setRuntime(null);
    }
}

From source file:org.pentaho.plugin.jfreereport.reportcharts.FormulaCategoryURLGenerator.java

/**
 * Returns a URL for one item in a dataset. As a guideline, the URL should be valid within the context of an XHTML 1.0
 * document.  Classes that implement this interface are responsible for correctly escaping any text that is derived
 * from the dataset, as this may be user-specified and could pose a security risk.
 *
 * @param dataset  the dataset./* w w  w.  j  a va  2 s.  c  o  m*/
 * @param series   the series (zero-based index).
 * @param category the category.
 * @return A string containing the URL.
 */
public String generateURL(final CategoryDataset dataset, final int series, final int category) {
    try {
        final Comparable seriesKey = dataset.getRowKey(series);
        final Comparable categoryKey = dataset.getColumnKey(category);
        final Object[] categoryKeys = dataset.getColumnKeys().toArray();
        final Object[] seriesKeys = dataset.getRowKeys().toArray();
        final Object value = dataset.getValue(series, category);

        final Object[] values = new Object[] { seriesKey, categoryKey, IntegerCache.getInteger(series),
                IntegerCache.getInteger(category), seriesKeys, categoryKeys, value };
        final StaticDataRow datarow = new StaticDataRow(ADDITIONAL_COLUMN_KEYS, values);
        final WrapperExpressionRuntime wrapper = new WrapperExpressionRuntime(datarow, runtime);
        formulaExpression.setRuntime(wrapper);
        final Object o = formulaExpression.getValue();
        if (o == null) {
            return null;
        }
        return String.valueOf(o);
    } finally {
        formulaExpression.setRuntime(null);
    }
}

From source file:org.talend.dataprofiler.chart.preview.DQRuleItemLabelGenerator.java

@Override
protected Object[] createItemArray(CategoryDataset dataset, int row, int column) {

    Object[] result = new Object[4];
    result[0] = dataset.getRowKey(row).toString();
    result[1] = dataset.getColumnKey(column).toString();
    Number value = dataset.getValue(row, column);
    if (value != null && !value.equals(Double.NaN)) {
        if (super.getNumberFormat() != null) {
            result[2] = super.getNumberFormat().format(value);
        } else if (super.getDateFormat() != null) {
            result[2] = super.getDateFormat().format(value);
        }//from  w w w.  j  av  a2  s  . c o m

        double total = DataUtilities.calculateColumnTotal(dataset, column);
        double percent = value.doubleValue() / total;
        // MOD qiongli bug 21589,override for just changeing this line.avoid 99.99% to show 100%
        // result[3] = this.percentFormat.format(percent);
        result[3] = stringformat(percent, 0).toString();
    } else {
        result[2] = "-"; //$NON-NLS-1$
        result[3] = "-"; //$NON-NLS-1$
    }

    return result;

}

From source file:com.greenpepper.confluence.macros.historic.LinearExecutionChartBuilder.java

private void customizeChart(JFreeChart chart) throws IOException {
    chart.setBackgroundPaint(Color.white);
    chart.setBorderVisible(settings.isBorder());

    TextTitle chartTitle = chart.getTitle();
    customizeTitle(chartTitle, DEFAULT_TITLE_FONT);

    addSubTitle(chart, settings.getSubTitle(), DEFAULT_SUBTITLE_FONT);
    addSubTitle(chart, settings.getSubTitle2(), DEFAULT_SUBTITLE2_FONT);

    CategoryPlot plot = (CategoryPlot) chart.getPlot();
    plot.setNoDataMessage(gpUtil.getText("greenpepper.historic.nodata"));

    CategoryItemRenderer renderer = plot.getRenderer();

    int index = 0;
    renderer.setSeriesPaint(index++, GREEN_COLOR);
    if (settings.isShowIgnored())
        renderer.setSeriesPaint(index++, Color.yellow);
    renderer.setSeriesPaint(index, Color.red);

    renderer.setToolTipGenerator(new StandardCategoryToolTipGenerator());
    renderer.setItemURLGenerator(new CategoryURLGenerator() {

        public String generateURL(CategoryDataset data, int series, int category) {
            Comparable valueKey = data.getColumnKey(category);
            ChartLongValue value = (ChartLongValue) valueKey;
            return "javascript:" + settings.getExecutionUID() + "_showExecutionResult('" + value.getId()
                    + "');";
        }//from   w  ww  . ja v  a 2 s  .  c o  m
    });

    CategoryAxis domainAxis = plot.getDomainAxis();
    customizeAxis(domainAxis);
    domainAxis.setCategoryLabelPositions(CategoryLabelPositions.DOWN_90);

    ValueAxis rangeAxis = plot.getRangeAxis();
    customizeAxis(rangeAxis);
    rangeAxis.setLowerBound(0);

    if (rangeAxis instanceof NumberAxis) {
        ((NumberAxis) rangeAxis).setTickUnit(new NumberTickUnit(1));
    }

    plot.setForegroundAlpha(0.8f);
}

From source file:ch.unibe.iam.scg.archie.ui.charts.HistogramTooltipGenerator.java

/**
 * @{inheritDoc// w ww.j  a  va2s.  com
 */
@Override
protected Object[] createItemArray(CategoryDataset dataset, int row, int column) {
    Object[] result = new Object[4];
    String nullValueString = "-";

    result[0] = dataset.getRowKey(row).toString();
    result[1] = dataset.getColumnKey(column).toString();

    Number value = dataset.getValue(row, column);

    if (value != null) {
        // flip negative numbers
        result[2] = value.doubleValue() < 0 ? -value.doubleValue() : value.doubleValue();
    } else {
        result[2] = nullValueString;
    }

    return result;
}