List of usage examples for org.jfree.data.category CategoryDataset getValue
public Number getValue(Comparable rowKey, Comparable columnKey);
From source file:com.att.aro.main.PercentLabelGenerator.java
/** * Returns a percentage label string using the data in the specified row and * column of the dataset.// ww w . ja va 2 s . c om * * @param dataset * The dataset containing the data for the chart. * * @param row * The row of data in the dataset. * * @param column * The column of data in the dataset. * * @return A string that is the percentage label. */ @Override public String generateLabel(CategoryDataset dataset, int row, int column) { Number value = dataset.getValue(row, column); return value != null ? formatter.format(value.doubleValue()) : ""; }
From source file:org.javarebel.chart.generator.DefaultChartLabelGenerator.java
@Override public String generateLabel(CategoryDataset arg0, int arg1, int arg2) { Number val = arg0.getValue(arg1, arg2); return (val != null && val.doubleValue() != 0.0D) ? numFrmt.format(val) : ""; }
From source file:com.att.aro.ui.view.overviewtab.PercentLabelGenerator.java
/** * Returns a percentage label string using the data in the specified row and * column of the dataset./*from www .ja v a2 s .c o m*/ * * @param dataset * The dataset containing the data for the chart. * * @param row * The row of data in the dataset. * * @param column * The column of data in the dataset. * * @return A string that is the percentage label. */ @Override public String generateLabel(CategoryDataset dataset, int row, int column) { Number value = dataset.getValue(row, column); String gLabel = ""; if (CommonHelper.isNotNull(value)) { gLabel = formatter.format(value.doubleValue()); } return gLabel; }
From source file:org.sakaiproject.evaluation.tool.reporting.LikertPercentageItemLabelGenerator.java
public String generateLabel(CategoryDataset dataset, int series, int category) { Number value = dataset.getValue(series, category); if (value == null) return ""; double doubleVal = value.doubleValue(); int intVal = value.intValue(); if (doubleVal == 0.0) { return "0 % (0)"; } else if (totalItems != 0) { double percentage = doubleVal / doubleTotalItems * 100; // return percentage + " % (" + intVal + ")"; // return String.format("%.2f %s (%s)", percentage,"%", intVal+""); return String.format("%.0f %s (%s)", percentage, "%", intVal + ""); } else if (value != null) { return value.toString(); }/* www . ja v a 2 s .com*/ return ""; }
From source file:unikn.dbis.univis.visualization.chart.LabelGenerator.java
/** * Makes a own legend./* w w w .j a v a2s . c om*/ * * @param dataset * @param series * @return String for nice legend. */ public String generateLabel(CategoryDataset dataset, int series) { Integer value = dataset.getValue(series, 0).intValue(); Comparable name = dataset.getRowKey(series); Double percent = ((full / total) * value); return name.toString() + " = " + value.toString() + " -> " + decimalFormat.format(percent) + "%"; }
From source file:org.pentaho.plugin.jfreereport.reportcharts.LogCategoryItemLabelGenerator.java
/** * Creates the array of items that can be passed to the {@link java.text.MessageFormat} class for creating labels. * * @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 items (never <code>null</code>). *///from w ww .j a v a 2 s . c om protected Object[] createItemArray(final CategoryDataset dataset, final int row, final int column) { final Object[] objects = super.createItemArray(dataset, row, column); final Number value = dataset.getValue(row, column); objects[2] = formatValue(value); return objects; }
From source file:org.jfree.chart.demo.CylinderRenderer.java
public void drawItem(Graphics2D graphics2d, CategoryItemRendererState categoryitemrendererstate, Rectangle2D rectangle2d, CategoryPlot categoryplot, CategoryAxis categoryaxis, ValueAxis valueaxis, CategoryDataset categorydataset, int i, int j, int k) { Number number = categorydataset.getValue(i, j); if (number == null) return;// w ww . j a v a 2 s . co m double d = number.doubleValue(); java.awt.geom.Rectangle2D.Double double1 = new java.awt.geom.Rectangle2D.Double(rectangle2d.getX(), rectangle2d.getY() + getYOffset(), rectangle2d.getWidth() - getXOffset(), rectangle2d.getHeight() - getYOffset()); PlotOrientation plotorientation = categoryplot.getOrientation(); double d1 = calculateBarW0(categoryplot, plotorientation, double1, categoryaxis, categoryitemrendererstate, i, j); double ad[] = calculateBarL0L1(d); if (ad == null) return; RectangleEdge rectangleedge = categoryplot.getRangeAxisEdge(); float f = (float) valueaxis.valueToJava2D(ad[0], double1, rectangleedge); float f1 = (float) valueaxis.valueToJava2D(ad[1], double1, rectangleedge); float f2 = Math.min(f, f1); float f3 = Math.abs(f1 - f); GeneralPath generalpath = new GeneralPath(); java.awt.geom.Ellipse2D.Double double2 = null; if (plotorientation == PlotOrientation.HORIZONTAL) { generalpath.moveTo((float) ((double) f2 + getXOffset() / 2D), (float) d1); generalpath.lineTo((float) ((double) (f2 + f3) + getXOffset() / 2D), (float) d1); java.awt.geom.Arc2D.Double double3 = new java.awt.geom.Arc2D.Double(f2 + f3, d1, getXOffset(), categoryitemrendererstate.getBarWidth(), 90D, 180D, 0); generalpath.append(double3, true); generalpath.lineTo((float) ((double) f2 + getXOffset() / 2D), (float) (d1 + categoryitemrendererstate.getBarWidth())); double3 = new java.awt.geom.Arc2D.Double(f2, d1, getXOffset(), categoryitemrendererstate.getBarWidth(), 270D, -180D, 0); generalpath.append(double3, true); generalpath.closePath(); double2 = new java.awt.geom.Ellipse2D.Double(f2 + f3, d1, getXOffset(), categoryitemrendererstate.getBarWidth()); } else { generalpath.moveTo((float) d1, (float) ((double) f2 - getYOffset() / 2D)); generalpath.lineTo((float) d1, (float) ((double) (f2 + f3) - getYOffset() / 2D)); java.awt.geom.Arc2D.Double double4 = new java.awt.geom.Arc2D.Double(d1, (double) (f2 + f3) - getYOffset(), categoryitemrendererstate.getBarWidth(), getYOffset(), 180D, 180D, 0); generalpath.append(double4, true); generalpath.lineTo((float) (d1 + categoryitemrendererstate.getBarWidth()), (float) ((double) f2 - getYOffset() / 2D)); double4 = new java.awt.geom.Arc2D.Double(d1, (double) f2 - getYOffset(), categoryitemrendererstate.getBarWidth(), getYOffset(), 0.0D, -180D, 0); generalpath.append(double4, true); generalpath.closePath(); double2 = new java.awt.geom.Ellipse2D.Double(d1, (double) f2 - getYOffset(), categoryitemrendererstate.getBarWidth(), getYOffset()); } Object obj = getItemPaint(i, j); if (getGradientPaintTransformer() != null && (obj instanceof GradientPaint)) { GradientPaint gradientpaint = (GradientPaint) obj; obj = getGradientPaintTransformer().transform(gradientpaint, generalpath); } graphics2d.setPaint(((java.awt.Paint) (obj))); graphics2d.fill(generalpath); if (obj instanceof GradientPaint) { graphics2d.setPaint(((GradientPaint) obj).getColor2()); } if (double2 != null) { graphics2d.fill(double2); } if (isDrawBarOutline() && categoryitemrendererstate.getBarWidth() > 3D) { graphics2d.setStroke(getItemOutlineStroke(i, j)); graphics2d.setPaint(getItemOutlinePaint(i, j)); graphics2d.draw(generalpath); if (double2 != null) graphics2d.draw(double2); } CategoryItemLabelGenerator categoryitemlabelgenerator = getItemLabelGenerator(i, j); if (categoryitemlabelgenerator != null && isItemLabelVisible(i, j)) drawItemLabel(graphics2d, categorydataset, i, j, categoryplot, categoryitemlabelgenerator, generalpath.getBounds2D(), d < 0.0D); if (categoryitemrendererstate.getInfo() != null) { EntityCollection entitycollection = categoryitemrendererstate.getEntityCollection(); if (entitycollection != null) { String s = null; CategoryToolTipGenerator categorytooltipgenerator = getToolTipGenerator(i, j); if (categorytooltipgenerator != null) s = categorytooltipgenerator.generateToolTip(categorydataset, i, j); String s1 = null; if (getItemURLGenerator(i, j) != null) s1 = getItemURLGenerator(i, j).generateURL(categorydataset, i, j); CategoryItemEntity categoryitementity = new CategoryItemEntity(generalpath.getBounds2D(), s, s1, categorydataset, categorydataset.getRowKey(i), categorydataset.getColumnKey(j)); entitycollection.add(categoryitementity); } } }
From source file:org.squale.squaleweb.util.graph.RepartitionToolTipGenerator.java
/** * @see org.jfree.chart.labels.CategoryToolTipGenerator#generateToolTip(org.jfree.data.category.CategoryDataset, * int, int) {@inheritDoc}//from ww w. j a v a2s .co m */ public String generateToolTip(CategoryDataset pCategory, int pRowIndex, int pColumIndex) { String result = ""; if (pRowIndex < AbstractRepartitionMaker.NB_SERIES_FOR_FLOAT_GRAPH - 1) { result = "(" + pCategory.getRowKey(pRowIndex) + "," + pCategory.getRowKey(pRowIndex + 1) + ")=" + pCategory.getValue(pRowIndex, pColumIndex); } else { result = "(" + pCategory.getRowKey(pRowIndex) + ",3.0" + ")=" + pCategory.getValue(pRowIndex, pColumIndex); } return result; }
From source file:org.pentaho.chart.plugin.api.ChartItemLabelGenerator.java
/** * This method is over-ridden to get the actual data value into the item label along with * custom formatting defined for the series in the chart definition document. * {0} maps to data value/*w w w. j a va 2 s . c o m*/ * {1} maps to column name * * @param dataset category dataset * @param row Row number * @param column Column number * @return String Final label string for the given series */ public String generateLabel(final CategoryDataset dataset, final int row, final int column) { if (dataset == null) { return null; } try { final Object data = dataset.getValue(row, column); if (data != null) { final ChartElement ce = map.get(Integer.valueOf(column)); if (ce != null) { final LayoutStyle layoutStyle = ce.getLayoutStyle(); //Format the item label text final String messageFormat = ((CSSStringValue) layoutStyle .getValue(ChartStyleKeys.ITEM_LABEL_TEXT)).getValue();//$NON-NLS-1$ String result = MessageFormat.format(messageFormat, data, dataset.getColumnKey(column)); //Get the font variant to convert the label text to upper case if the //font variant is set to small-caps final CSSValue variant = layoutStyle.getValue(FontStyleKeys.FONT_VARIANT); if (FontVariant.SMALL_CAPS.equals(variant)) { result = result.toUpperCase(); } return result; } } } catch (IndexOutOfBoundsException ignore) { //Ignore this exception as we are not directly causing it. } return 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 a v a2s .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; }