AxisModel

interface AxisModel<T>

An interface for classes representing a plot axis.

Parameters

T

The data type for the axis values.

Inheritors

Properties

Link copied to clipboard

Specifies the minimum spacing for major ticks, in Dp units. Must be greater than 0.

Functions

Link copied to clipboard
abstract fun computeOffset(point: T): Float

Computes the linear offset of the provided point along this axis relative to its min value. For a linear axis this is offset = (point-min)/(max-min). Values less than 0 or greater than 1 mean the point is before or beyond the range of the axis, respectively. Nonlinear, e.g. log, axes can be implemented with appropriate transformations in this function.

Link copied to clipboard
abstract fun computeTickValues(axisLength: Dp): TickValues<T>

Computes major and minor tick values based on the minimum tick spacing and the overall axisLength.

Link copied to clipboard
open fun pan(amount: Float)

Asks the AxisState to compute new ranges and tick values after panning, if the axis supports panning.

Link copied to clipboard
open fun zoom(zoomFactor: Float, pivot: Float)

Asks the AxisState to compute new ranges and tick values after zooming, if the axis supports zooming.