uk.ac.starlink.ttools.plot2
Class PrefixTicker

java.lang.Object
  extended by uk.ac.starlink.ttools.plot2.PrefixTicker
All Implemented Interfaces:
Ticker

public abstract class PrefixTicker
extends Object
implements Ticker

Partial Ticker implementation for major tick labels with prefixes. Prefixes are typically common to several adjacent ticks, but to save space only actually included for one of each class, for instance something like:

    |---------|---------|---------|---------|---------|---------|
  10:00       20        30        40        50      11:00       10 
 

This partial implementation is based on a tick generation rule in the same way as BasicTicker.

Since:
18 Oct 2013
Author:
Mark Taylor
See Also:
BasicTicker

Nested Class Summary
static interface PrefixTicker.Rule
          Defines a specific rule for generating tick marks with prefixes.
 
Constructor Summary
PrefixTicker(boolean logFlag)
          Constructor.
 
Method Summary
abstract  PrefixTicker.Rule createRule(double dlo, double dhi, double approxMajorCount, int adjust)
          Returns a new rule for labelling an axis in a given range.
 Tick[] getTicks(double dlo, double dhi, boolean withMinor, Captioner captioner, Orientation orient, int npix, double crowding)
          Generates tick marks for labelling a plot axis.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PrefixTicker

public PrefixTicker(boolean logFlag)
Constructor.

Parameters:
logFlag - true for logarithmic axis, false for linear
Method Detail

createRule

public abstract PrefixTicker.Rule createRule(double dlo,
                                             double dhi,
                                             double approxMajorCount,
                                             int adjust)
Returns a new rule for labelling an axis in a given range. The tick density is determined by two parameters, approxMajorCount, which gives a baseline value for the number of ticks required over the given range, and adjust. Increasing adjust will give more major ticks, and decreasing it will give fewer ticks. Each value of adjust should result in a different tick count.

Parameters:
dlo - minimum axis data value
dhi - maximum axis data value
approxMajorCount - guide value for number of major ticks in range
adjust - adjusts density of major ticks, zero is normal

getTicks

public Tick[] getTicks(double dlo,
                       double dhi,
                       boolean withMinor,
                       Captioner captioner,
                       Orientation orient,
                       int npix,
                       double crowding)
Description copied from interface: Ticker
Generates tick marks for labelling a plot axis.

Specified by:
getTicks in interface Ticker
Parameters:
dlo - minimum axis data value
dhi - maximum axis data value
withMinor - if true minor axes are included, if false only major (labelled) ones are
captioner - caption painter
orient - label orientation
npix - number of pixels along the axis
crowding - 1 for normal tick density on the axis, lower for fewer labels, higher for more
Returns:
tick array


Copyright © 2015 Central Laboratory of the Research Councils. All Rights Reserved.