Search in sources :

Example 1 with ValueTick

use of org.jfree.chart.axis.ValueTick in project SIMVA-SoS by SESoS.

the class PolarPlot method buildRadialTicks.

/**
 * Create a list of ticks based on the given list and plot properties.
 * Only ticks of a specific type may be in the result list.
 *
 * @param allTicks A list of all available ticks for the primary axis.
 *        <code>null</code> not permitted.
 * @return Ticks to use for radial gridlines.
 * @since 1.0.15
 */
protected List buildRadialTicks(List allTicks) {
    List ticks = new ArrayList();
    Iterator it = allTicks.iterator();
    while (it.hasNext()) {
        ValueTick tick = (ValueTick) it.next();
        if (isRadiusMinorGridlinesVisible() || TickType.MAJOR.equals(tick.getTickType())) {
            ticks.add(tick);
        }
    }
    return ticks;
}
Also used : ValueTick(org.jfree.chart.axis.ValueTick) ArrayList(java.util.ArrayList) Iterator(java.util.Iterator) List(java.util.List) ArrayList(java.util.ArrayList) ObjectList(org.jfree.util.ObjectList)

Example 2 with ValueTick

use of org.jfree.chart.axis.ValueTick in project SIMVA-SoS by SESoS.

the class CategoryPlot method drawRangeGridlines.

/**
 * Draws the range gridlines for the plot, if they are visible.
 *
 * @param g2  the graphics device ({@code null} not permitted).
 * @param dataArea  the area inside the axes ({@code null} not permitted).
 * @param ticks  the ticks.
 *
 * @see #drawDomainGridlines(Graphics2D, Rectangle2D)
 */
protected void drawRangeGridlines(Graphics2D g2, Rectangle2D dataArea, List ticks) {
    // draw the range grid lines, if any...
    if (!isRangeGridlinesVisible() && !isRangeMinorGridlinesVisible()) {
        return;
    }
    // no axis, no gridlines...
    ValueAxis axis = getRangeAxis();
    if (axis == null) {
        return;
    }
    // no renderer, no gridlines...
    CategoryItemRenderer r = getRenderer();
    if (r == null) {
        return;
    }
    Stroke gridStroke = null;
    Paint gridPaint = null;
    boolean paintLine;
    Iterator iterator = ticks.iterator();
    while (iterator.hasNext()) {
        paintLine = false;
        ValueTick tick = (ValueTick) iterator.next();
        if ((tick.getTickType() == TickType.MINOR) && isRangeMinorGridlinesVisible()) {
            gridStroke = getRangeMinorGridlineStroke();
            gridPaint = getRangeMinorGridlinePaint();
            paintLine = true;
        } else if ((tick.getTickType() == TickType.MAJOR) && isRangeGridlinesVisible()) {
            gridStroke = getRangeGridlineStroke();
            gridPaint = getRangeGridlinePaint();
            paintLine = true;
        }
        if (((tick.getValue() != 0.0) || !isRangeZeroBaselineVisible()) && paintLine) {
            // interface...
            if (r instanceof AbstractCategoryItemRenderer) {
                AbstractCategoryItemRenderer aci = (AbstractCategoryItemRenderer) r;
                aci.drawRangeLine(g2, this, axis, dataArea, tick.getValue(), gridPaint, gridStroke);
            } else {
                // we'll have to use the method in the interface, but
                // this doesn't have the paint and stroke settings...
                r.drawRangeGridline(g2, this, axis, dataArea, tick.getValue());
            }
        }
    }
}
Also used : ValueTick(org.jfree.chart.axis.ValueTick) BasicStroke(java.awt.BasicStroke) Stroke(java.awt.Stroke) AbstractCategoryItemRenderer(org.jfree.chart.renderer.category.AbstractCategoryItemRenderer) CategoryItemRenderer(org.jfree.chart.renderer.category.CategoryItemRenderer) ValueAxis(org.jfree.chart.axis.ValueAxis) AbstractCategoryItemRenderer(org.jfree.chart.renderer.category.AbstractCategoryItemRenderer) Iterator(java.util.Iterator) Paint(java.awt.Paint)

Example 3 with ValueTick

use of org.jfree.chart.axis.ValueTick in project SIMVA-SoS by SESoS.

the class XYPlot method drawRangeGridlines.

/**
 * Draws the gridlines for the plot's primary range axis, if they are
 * visible.
 *
 * @param g2  the graphics device.
 * @param area  the data area.
 * @param ticks  the ticks.
 *
 * @see #drawDomainGridlines(Graphics2D, Rectangle2D, List)
 */
protected void drawRangeGridlines(Graphics2D g2, Rectangle2D area, List ticks) {
    // no renderer, no gridlines...
    if (getRenderer() == null) {
        return;
    }
    // draw the range grid lines, if any...
    if (isRangeGridlinesVisible() || isRangeMinorGridlinesVisible()) {
        Stroke gridStroke = null;
        Paint gridPaint = null;
        ValueAxis axis = getRangeAxis();
        if (axis != null) {
            Iterator iterator = ticks.iterator();
            boolean paintLine;
            while (iterator.hasNext()) {
                paintLine = false;
                ValueTick tick = (ValueTick) iterator.next();
                if ((tick.getTickType() == TickType.MINOR) && isRangeMinorGridlinesVisible()) {
                    gridStroke = getRangeMinorGridlineStroke();
                    gridPaint = getRangeMinorGridlinePaint();
                    paintLine = true;
                } else if ((tick.getTickType() == TickType.MAJOR) && isRangeGridlinesVisible()) {
                    gridStroke = getRangeGridlineStroke();
                    gridPaint = getRangeGridlinePaint();
                    paintLine = true;
                }
                if ((tick.getValue() != 0.0 || !isRangeZeroBaselineVisible()) && paintLine) {
                    getRenderer().drawRangeLine(g2, this, getRangeAxis(), area, tick.getValue(), gridPaint, gridStroke);
                }
            }
        }
    }
}
Also used : ValueTick(org.jfree.chart.axis.ValueTick) BasicStroke(java.awt.BasicStroke) Stroke(java.awt.Stroke) ValueAxis(org.jfree.chart.axis.ValueAxis) Iterator(java.util.Iterator) Paint(java.awt.Paint)

Example 4 with ValueTick

use of org.jfree.chart.axis.ValueTick in project SIMVA-SoS by SESoS.

the class XYPlot method drawDomainGridlines.

/**
 * Draws the gridlines for the plot, if they are visible.
 *
 * @param g2  the graphics device.
 * @param dataArea  the data area.
 * @param ticks  the ticks.
 *
 * @see #drawRangeGridlines(Graphics2D, Rectangle2D, List)
 */
protected void drawDomainGridlines(Graphics2D g2, Rectangle2D dataArea, List ticks) {
    // no renderer, no gridlines...
    if (getRenderer() == null) {
        return;
    }
    // draw the domain grid lines, if any...
    if (isDomainGridlinesVisible() || isDomainMinorGridlinesVisible()) {
        Stroke gridStroke = null;
        Paint gridPaint = null;
        Iterator iterator = ticks.iterator();
        boolean paintLine;
        while (iterator.hasNext()) {
            paintLine = false;
            ValueTick tick = (ValueTick) iterator.next();
            if ((tick.getTickType() == TickType.MINOR) && isDomainMinorGridlinesVisible()) {
                gridStroke = getDomainMinorGridlineStroke();
                gridPaint = getDomainMinorGridlinePaint();
                paintLine = true;
            } else if ((tick.getTickType() == TickType.MAJOR) && isDomainGridlinesVisible()) {
                gridStroke = getDomainGridlineStroke();
                gridPaint = getDomainGridlinePaint();
                paintLine = true;
            }
            XYItemRenderer r = getRenderer();
            if ((r instanceof AbstractXYItemRenderer) && paintLine) {
                ((AbstractXYItemRenderer) r).drawDomainLine(g2, this, getDomainAxis(), dataArea, tick.getValue(), gridPaint, gridStroke);
            }
        }
    }
}
Also used : ValueTick(org.jfree.chart.axis.ValueTick) BasicStroke(java.awt.BasicStroke) Stroke(java.awt.Stroke) AbstractXYItemRenderer(org.jfree.chart.renderer.xy.AbstractXYItemRenderer) Iterator(java.util.Iterator) Paint(java.awt.Paint) AbstractXYItemRenderer(org.jfree.chart.renderer.xy.AbstractXYItemRenderer) XYItemRenderer(org.jfree.chart.renderer.xy.XYItemRenderer)

Example 5 with ValueTick

use of org.jfree.chart.axis.ValueTick in project SIMVA-SoS by SESoS.

the class FastScatterPlot method drawRangeGridlines.

/**
 * Draws the gridlines for the plot, if they are visible.
 *
 * @param g2  the graphics device.
 * @param dataArea  the data area.
 * @param ticks  the ticks.
 */
protected void drawRangeGridlines(Graphics2D g2, Rectangle2D dataArea, List ticks) {
    if (!isRangeGridlinesVisible()) {
        return;
    }
    Object saved = g2.getRenderingHint(RenderingHints.KEY_STROKE_CONTROL);
    g2.setRenderingHint(RenderingHints.KEY_STROKE_CONTROL, RenderingHints.VALUE_STROKE_NORMALIZE);
    Iterator iterator = ticks.iterator();
    while (iterator.hasNext()) {
        ValueTick tick = (ValueTick) iterator.next();
        double v = this.rangeAxis.valueToJava2D(tick.getValue(), dataArea, RectangleEdge.LEFT);
        Line2D line = new Line2D.Double(dataArea.getMinX(), v, dataArea.getMaxX(), v);
        g2.setPaint(getRangeGridlinePaint());
        g2.setStroke(getRangeGridlineStroke());
        g2.draw(line);
    }
    g2.setRenderingHint(RenderingHints.KEY_STROKE_CONTROL, saved);
}
Also used : ValueTick(org.jfree.chart.axis.ValueTick) Iterator(java.util.Iterator) Line2D(java.awt.geom.Line2D)

Aggregations

Iterator (java.util.Iterator)8 ValueTick (org.jfree.chart.axis.ValueTick)8 Paint (java.awt.Paint)5 ValueAxis (org.jfree.chart.axis.ValueAxis)4 BasicStroke (java.awt.BasicStroke)3 Stroke (java.awt.Stroke)3 Line2D (java.awt.geom.Line2D)2 ArrayList (java.util.ArrayList)1 List (java.util.List)1 AbstractCategoryItemRenderer (org.jfree.chart.renderer.category.AbstractCategoryItemRenderer)1 CategoryItemRenderer (org.jfree.chart.renderer.category.CategoryItemRenderer)1 AbstractXYItemRenderer (org.jfree.chart.renderer.xy.AbstractXYItemRenderer)1 XYItemRenderer (org.jfree.chart.renderer.xy.XYItemRenderer)1 ObjectList (org.jfree.util.ObjectList)1