# Interface Scaling

All Known Subinterfaces:
  `Scaling.HistogramScaling, Scaling.RangeScaling`

@Equality public interface Scaling
Defines a policy for scaling values to a fixed interval. The job of a Scaling is to create a `Scaler`, usually from information that can be gained from a `Span` instance. Scaling implementation classes should generally implement one of the sub-interfaces here to indicate how this can be done.

Since:
  22 Jan 2015
Author:
  Mark Taylor
See Also:
  - `Scalings`

## Nested Class Summary

Nested Classes
Modifier and Type
Interface
Description
`static interface`
`Scaling.HistogramScaling`
Marker interface for Scaling instances that create Scalers based on a histogram assembled from data.
`static interface`
`Scaling.RangeScaling`
Interface for Scaling instances that can create Scalers from a lower and upper bound.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final Scaling.RangeScaling`
`ACOS`
Arccos scaling; sigmoid vertical at each end.
`static final Scaling.RangeScaling`
`ASINH`
Asinh scaling.
`static final Scaling.RangeScaling`
`AUTO`
Asinh-based scaling with default parameters.
`static final Scaling.RangeScaling`
`COS`
Cos scaling; sigmoid horizontal at each end.
`static final Scaling.HistogramScaling`
`HISTO`
Histogram scaling on a linear scale.
`static final Scaling.HistogramScaling`
`HISTOLOG`
Histogram scaling on a logarithmic scale.
`static final Scaling.RangeScaling`
`LINEAR`
Linear scaling.
`static final Scaling.RangeScaling`
`LOG`
Logarithmic scaling.
`static final Scaling.RangeScaling`
`SQRT`
Square root scaling.
`static final Scaling.RangeScaling`
`SQUARE`
Square scaling.
`static final Scaling[]`
`STRETCHES`
List of standard options for colour map stretch.

## Method Summary

Modifier and Type
Method
Description
`String`
`getDescription()`
Returns a short description of this scaling.
`String`
`getName()`
Returns the name of this scaling.
`boolean`
`isLogLike()`
Indicates whether this scaling is logarithmic.

## Field Details

### LINEAR

static final Scaling.RangeScaling LINEAR
Linear scaling.

### LOG

static final Scaling.RangeScaling LOG
Logarithmic scaling.

### ASINH

static final Scaling.RangeScaling ASINH
Asinh scaling.

### SQRT

static final Scaling.RangeScaling SQRT
Square root scaling.

### SQUARE

static final Scaling.RangeScaling SQUARE
Square scaling.

### ACOS

static final Scaling.RangeScaling ACOS
Arccos scaling; sigmoid vertical at each end.

### COS

static final Scaling.RangeScaling COS
Cos scaling; sigmoid horizontal at each end.

### AUTO

static final Scaling.RangeScaling AUTO
Asinh-based scaling with default parameters.

### HISTO

static final Scaling.HistogramScaling HISTO
Histogram scaling on a linear scale.

### HISTOLOG

static final Scaling.HistogramScaling HISTOLOG
Histogram scaling on a logarithmic scale.

### STRETCHES

static final Scaling[] STRETCHES
List of standard options for colour map stretch.

## Method Details

### getName

String getName()
Returns the name of this scaling.

Returns:
  name

### getDescription

String getDescription()
Returns a short description of this scaling.

Returns:
  short text description

### isLogLike

boolean isLogLike()
Indicates whether this scaling is logarithmic. If so, it should be displayed on logarithmic axis, and can't cope with negative values.

Returns:
  true for basically logarithmic, false for (perhaps distorted) linear