final int nColumns = dataset.getColumnCount(); final int nRows = dataset.getRowCount(); for (int i=0; i<nRows; i++ ) { Comparable rowKey = dataset.getRowKey(i); for( int j=0; j<nColumns; j++) { Comparable columnKey = dataset.getColumnKey(j); double n = dataset.getValue(rowKey,columnKey).doubleValue(); sum += n; sum2 +=n*n; double min=0,max=0; for (int i=0; i<nRows; i++ ) { Comparable rowKey = dataset.getRowKey(i); for( int j=0; j<nColumns; j++) { Comparable columnKey = dataset.getColumnKey(j); double n = dataset.getValue(rowKey,columnKey).doubleValue(); if(n<rangeMin || rangeMax<n) { found = true;
CategoryDataset dataset = plot.getDataset(plot.getIndexOf(this)); int columnIndex = dataset.getColumnIndex(category); if (columnIndex < 0) { return; PlotOrientation orientation = plot.getOrientation(); Rectangle2D bounds; if (marker.getDrawAsLine()) { double v = axis.getCategoryMiddle(columnIndex, dataset.getColumnCount(), dataArea, line = new Line2D.Double(v, dataArea.getMinY(), v, throw new IllegalStateException(); g2.setPaint(marker.getPaint()); double v0 = axis.getCategoryStart(columnIndex, dataset.getColumnCount(), dataArea, plot.getDomainAxisEdge()); double v1 = axis.getCategoryEnd(columnIndex, dataset.getColumnCount(), dataArea, if (orientation == PlotOrientation.HORIZONTAL) { area = new Rectangle2D.Double(dataArea.getMinX(), v0, area = new Rectangle2D.Double(v0, dataArea.getMinY(),
CategoryAxis domainAxis, ValueAxis rangeAxis) { PlotOrientation orientation = plot.getOrientation(); RectangleEdge domainEdge = Plot.resolveDomainAxisLocation( plot.getDomainAxisLocation(), orientation); RectangleEdge rangeEdge = Plot.resolveRangeAxisLocation( plot.getRangeAxisLocation(), orientation); CategoryDataset dataset = plot.getDataset(); int catIndex = dataset.getColumnIndex(getCategory()); int catCount = dataset.getColumnCount(); double j2DX = domainAxis.getCategoryMiddle(catIndex, catCount, dataArea, domainEdge); double j2DY = rangeAxis.valueToJava2D(getValue(), dataArea, rangeEdge); if (orientation == PlotOrientation.HORIZONTAL) { double temp = j2DX; arrow.closePath(); g2.setStroke(this.arrowStroke); g2.setPaint(this.arrowPaint); Line2D line = new Line2D.Double(startX, startY, arrowBaseX, arrowBaseY); g2.draw(line); g2.fill(arrow);
Number v = dataset.getValue(row, column); if (v == null) { return; Rectangle2D adjusted = new Rectangle2D.Double(dataArea.getX(), dataArea.getY() + getYOffset(), dataArea.getWidth() - getXOffset(), dataArea.getHeight() - getYOffset()); PlotOrientation orientation = plot.getOrientation(); double x1 = domainAxis.getCategoryMiddle(column, getColumnCount(), adjusted, plot.getDomainAxisEdge()); double value = v.doubleValue(); double y1 = rangeAxis.valueToJava2D(value, adjusted, plot.getRangeAxisEdge()); if (column != 0) { Number previousValue = dataset.getValue(row, column - 1); if (previousValue != null) { double x0 = domainAxis.getCategoryMiddle(column - 1, getColumnCount(), adjusted, plot.getDomainAxisEdge()); double y0 = rangeAxis.valueToJava2D(previous, adjusted, plot.getRangeAxisEdge());
CategoryDataset dataset = plot.getDataset(rendererIndex); if (dataset != null) { int columns = dataset.getColumnCount(); int rows = dataset.getRowCount(); double space = 0.0; PlotOrientation orientation = plot.getOrientation(); if (orientation == PlotOrientation.HORIZONTAL) { space = dataArea.getHeight(); space = dataArea.getWidth(); categoryMargin = domainAxis.getCategoryMargin(); double used = space * (1 - domainAxis.getLowerMargin() - domainAxis.getUpperMargin() - categoryMargin); if ((rows * columns) > 0) { state.setBarWidth(Math.min(used / (dataset.getColumnCount()), maxWidth));
if (column == dataset.getColumnCount() - 1) { previous = 0.0; Number n = dataset.getValue(row, column); if (n != null) { current = previous + n.doubleValue(); PlotOrientation orientation = plot.getOrientation(); RectangleEdge rangeAxisLocation = plot.getRangeAxisEdge(); double j2dy0 = rangeAxis.valueToJava2D(previous, dataArea, rangeAxisLocation); double j2dy1 = rangeAxis.valueToJava2D(current, dataArea, rangeAxisLocation); Math.abs(j2dy1 - j2dy0)); Comparable seriesKey = dataset.getRowKey(row); Comparable categoryKey = dataset.getColumnKey(column); if (orientation == PlotOrientation.HORIZONTAL) { rectY = domainAxis.getCategorySeriesMiddle(categoryKey, seriesKey, dataset, getItemMargin(), dataArea, RectangleEdge.LEFT); seriesPaint = getGradientPaintTransformer().transform(gp, bar);
Number dataValue = dataset.getValue(row, column); if (dataValue == null) { return; RectangleEdge edge = plot.getRangeAxisEdge(); double transX1 = rangeAxis.valueToJava2D(base, dataArea, edge); double transX2 = rangeAxis.valueToJava2D(value, dataArea, edge); double rectX = Math.min(transX1, transX2); double rectWidth = Math.abs(transX2 - transX1); double rectY = domainAxis.getCategoryMiddle(column, getColumnCount(), dataArea, plot.getDomainAxisEdge()) - state.getBarWidth() / 2.0; Rectangle2D bar = new Rectangle2D.Double(rectX, (rectY + ((seriesCount - 1 - row) * shift)), rectWidth, (rectHeight - (seriesCount - 1 - row) * shift * 2)); beginElementGroup(g2, dataset.getRowKey(row), dataset.getColumnKey(column)); itemPaint = t.transform((GradientPaint) itemPaint, bar); g2.setPaint(itemPaint); g2.fill(bar);
PlotOrientation orientation = plot.getOrientation(); x1 = domainAxis.getCategorySeriesMiddle(column, dataset.getColumnCount(), visibleRow, visibleRowCount, this.itemMargin, dataArea, plot.getDomainAxisEdge()); x1 = domainAxis.getCategoryMiddle(column, getColumnCount(), dataArea, plot.getDomainAxisEdge()); double y1 = rangeAxis.valueToJava2D(value, dataArea, plot.getRangeAxisEdge()); g2.setPaint(getItemFillPaint(row, column)); g2.setPaint(getItemPaint(row, column)); g2.fill(shape);
Number dataValue = dataset.getValue(row, column); if (dataValue == null) { return; double xx1 = domainAxis.getCategoryMiddle(column, getColumnCount(), dataArea, plot.getDomainAxisEdge()); RectangleEdge location = plot.getRangeAxisEdge(); double yy1 = rangeAxis.valueToJava2D(y1, dataArea, location); g2.setPaint(getItemPaint(row, column)); g2.setStroke(getItemStroke(row, column)); drawItemLabel(g2, plot.getOrientation(), dataset, row, column, xx1, yy1, (y1 < 0.0)); Number previousValue = dataset.getValue(row, column - 1); if (previousValue != null) { double xx0 = domainAxis.getCategoryMiddle(column - 1, getColumnCount(), dataArea, plot.getDomainAxisEdge()); double y0 = previousValue.doubleValue(); p.addPoint((int) xx0, (int) previousHeightxx0); g2.setPaint(getItemPaint(row, column-1)); g2.setStroke(getItemStroke(row, column-1)); g2.fill(p);
Number value = dataset.getValue(row, column); if (value != null) { g2.setPaint(getItemPaint(row, column)); g2.setStroke(getItemStroke(row, column)); PlotOrientation orient = plot.getOrientation(); if (orient == PlotOrientation.VERTICAL) { this.objectIcon.paintIcon(null, g2, (int) x1, (int) y1); if (dataset.getRowCount() - 1 == row) { g2.setPaint(this.groupPaint); g2.setStroke(this.groupStroke); double minY = rangeAxis.valueToJava2D(this.min, dataArea, plot.getRangeAxisEdge()); double maxY = rangeAxis.valueToJava2D(this.max, dataArea, plot.getRangeAxisEdge()); Number previousValue = dataset.getValue(row, column - 1); if (previousValue != null) { double x0 = domainAxis.getCategoryMiddle(column - 1, getColumnCount(), dataArea, plot.getDomainAxisEdge());
CategoryAxis domainAxis, ValueAxis rangeAxis) { CategoryDataset dataset = plot.getDataset(); int catIndex1 = dataset.getColumnIndex(this.category1); int catIndex2 = dataset.getColumnIndex(this.category2); int catCount = dataset.getColumnCount(); double lineX2 = 0.0f; double lineY2 = 0.0f; PlotOrientation orientation = plot.getOrientation(); RectangleEdge domainEdge = Plot.resolveDomainAxisLocation( plot.getDomainAxisLocation(), orientation); RectangleEdge rangeEdge = Plot.resolveRangeAxisLocation( plot.getRangeAxisLocation(), orientation); lineX1 = domainAxis.getCategoryJava2DCoordinate( CategoryAnchor.MIDDLE, catIndex1, catCount, dataArea, domainEdge); lineY1 = rangeAxis.valueToJava2D(this.value1, dataArea, rangeEdge); lineX2 = domainAxis.getCategoryJava2DCoordinate( CategoryAnchor.MIDDLE, catIndex2, catCount, dataArea, lineY2 = rangeAxis.valueToJava2D(this.value2, dataArea, rangeEdge); g2.setPaint(this.paint); g2.setStroke(this.stroke); g2.drawLine((int) lineX1, (int) lineY1, (int) lineX2, (int) lineY2);
Number value = dataset.getValue(row, column); if (value == null) { return; PlotOrientation orientation = plot.getOrientation(); Number previousValue = dataset.getValue(row, column - 1); if (previousValue != null) { double x0s = domainAxis.getCategoryStart(column - 1, getColumnCount(), dataArea, plot.getDomainAxisEdge()); double x0 = domainAxis.getCategoryMiddle(column - 1, getColumnCount(), dataArea, plot.getDomainAxisEdge()); double x0e = 2 * x0 - x0s; // or: x0s + 2*(x0-x0s) double y0 = rangeAxis.valueToJava2D(previous, dataArea, plot.getRangeAxisEdge()); if (getStagger()) { Rectangle2D hotspot = new Rectangle2D.Double(); if (orientation == PlotOrientation.VERTICAL) { hotspot.setRect(x1s, y1, x1e - x1s, 4.0); hotspot.setRect(y1 - 2.0, x1s, 4.0, x1e - x1s);
if (row < dataset.getRowCount() - 1) { return; Comparable category = dataset.getColumnKey(column); dataset.getColumnKey(column), state.getVisibleSeriesArray(), getBase(), this.renderAsPercentages); Rectangle2D adjusted = new Rectangle2D.Double(dataArea.getX(), dataArea.getY() + getYOffset(), dataArea.getWidth() - getXOffset(), dataArea.getHeight() - getYOffset()); PlotOrientation orientation = plot.getOrientation();
CategoryAxis domainAxis, ValueAxis rangeAxis) { CategoryDataset dataset = plot.getDataset(); int catIndex = dataset.getColumnIndex(this.category); int catCount = dataset.getColumnCount(); PlotOrientation orientation = plot.getOrientation(); RectangleEdge domainEdge = Plot.resolveDomainAxisLocation( plot.getDomainAxisLocation(), orientation); RectangleEdge rangeEdge = Plot.resolveRangeAxisLocation( plot.getRangeAxisLocation(), orientation); anchorY = (float) domainAxis.getCategoryJava2DCoordinate( this.categoryAnchor, catIndex, catCount, dataArea, domainEdge); anchorX = (float) rangeAxis.valueToJava2D(this.value, dataArea, rangeEdge); anchorX = (float) domainAxis.getCategoryJava2DCoordinate( this.categoryAnchor, catIndex, catCount, dataArea, domainEdge); anchorY = (float) rangeAxis.valueToJava2D(this.value, dataArea, rangeEdge); g2.setFont(getFont()); g2.setPaint(getPaint()); TextUtils.drawRotatedString(getText(), g2, anchorX, anchorY, getTextAnchor(), getRotationAngle(), getRotationAnchor());
if (!isDomainGridlinesVisible()) { return; CategoryAnchor anchor = getDomainGridlinePosition(); RectangleEdge domainAxisEdge = getDomainAxisEdge(); CategoryDataset dataset = getDataset(); if (dataset == null) { CategoryAxis axis = getDomainAxis(); if (axis != null) { int columnCount = dataset.getColumnCount(); for (int c = 0; c < columnCount; c++) { double xx = axis.getCategoryJava2DCoordinate(anchor, c, columnCount, dataArea, domainAxisEdge); CategoryItemRenderer renderer1 = getRenderer();
DataRow[] generateDataSet(CategoryDataset dataset, CategoryURLGenerator urlGenerator) { final DataRow[] data = new DataRow[dataset.getColumnCount()]; // header for (int col = 0; col < dataset.getColumnCount(); col++) { Comparable key = dataset.getColumnKey(col); int val = dataset.getValue(0, col).intValue(); String url = urlGenerator.generateURL(dataset, 0, col); int percentage = dataset.getValue(1, col).intValue(); data[col] = new DataRow(key, url, val, percentage); } return data; }
plot.setLabelGenerator(new StandardCategoryItemLabelGenerator() { @Override public String generateColumnLabel(CategoryDataset dataset, int col) { return dataset.getColumnKey(col) + " " + dataset.getValue(0, col); } });
protected JFreeChart createBarChart() throws JRException { JFreeChart jfreeChart = super.createBarChart(); CategoryPlot categoryPlot = (CategoryPlot) jfreeChart.getPlot(); // categoryPlot.setOrientation(PlotOrientation.HORIZONTAL); BarRenderer barRenderer = (BarRenderer) categoryPlot.getRenderer(); barRenderer.setItemMargin(0); barRenderer.setGradientPaintTransformer(new StandardGradientPaintTransformer(GradientPaintTransformType.HORIZONTAL)); CategoryDataset categoryDataset = categoryPlot.getDataset(); if (categoryDataset != null) { for (int i = 0; i < categoryDataset.getRowCount(); i++) { barRenderer.setSeriesPaint(i, ChartThemesConstants.EYE_CANDY_SIXTIES_GRADIENT_PAINTS.get(i)); <-- Here is point } } return jfreeChart; }
@Override public String generateURL(CategoryDataset dataset, int series, int category) { return urls.get(dataset.getRowKey(series) + ":" + dataset.getColumnKey(category)); } });
/** * Generates a label for the specified row. * * @param dataset the dataset ({@code null} not permitted). * @param column the column index (zero-based). * * @return The label. */ public String generateColumnLabel(CategoryDataset dataset, int column) { return dataset.getColumnKey(column).toString(); }