@Override protected void createElements() { Node contentNode = chartNode.selectSingleNode(BUBBLE_LABEL_CONTENT_NODE_LOC); String content = getValue(contentNode); Node zFormatNode = chartNode.selectSingleNode(BUBBLE_LABEL_Z_FORMAT_NODE_LOC); String zFormat = getValue(zFormatNode); DecimalFormat df = null; if (zFormat != null) { df = new DecimalFormat(zFormat); } for (int row = 0; row < getRowCount(); row++) { Element e = null; String text = getRowHeader(row); ScatterChart sc = new ScatterChart(""); // $NON-NLS-1$ sc.setColour(getColor(row)); Number x = (Number) getValueAt(row, 0); Number y = (Number) getValueAt(row, 1); Number z = (Number) getValueAt(row, 2); setupDotSize(sc, z); sc.addPoint(x.doubleValue(), y.doubleValue()); if (content != null) { String zstr = null; if (df != null) { zstr = df.format(z); } else { if (z != null) { zstr = z.toString(); } } sc.setTooltip( MessageFormat.format( content, text, NumberFormat.getInstance().format(x), NumberFormat.getInstance().format(y), zstr)); } if (alpha != null) { sc.setAlpha(alpha); } e = sc; e.setText(text); elements.add(e); } }
public void setupDotSize(ScatterChart se, Number x) { se.setDotSize( Integer.valueOf( java.lang.Math.round(maxBubbleSize * (x.floatValue() / bubbleMaxX.floatValue())))); }