Trait plotters::coord::ranged1d::Ranged[][src]

pub trait Ranged {
    type FormatOption: DefaultValueFormatOption;
    type ValueType;
    fn map(&self, value: &Self::ValueType, limit: (i32, i32)) -> i32;
fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<Self::ValueType>;
fn range(&self) -> Range<Self::ValueType>; fn axis_pixel_range(&self, limit: (i32, i32)) -> Range<i32> { ... } }
Expand description

The trait that indicates we have a ordered and ranged value Which is used to describe any 1D axis.

Associated Types

type FormatOption: DefaultValueFormatOption[src]

This marker decides if Plotters default ValueFormatter implementation should be used. This assicated type can be one of follow two types:

  • DefaultFormatting will allow Plotters automatically impl the formatter based on Debug trait, if Debug trait is not impl for the Self::Value, ValueFormatter will not impl unless you impl it manually.

  • NoDefaultFormatting Disable the automatical Debug based value formatting. Thus you have to impl the ValueFormatter manually.

type ValueType[src]

The type of this value in this range specification

Required methods

fn map(&self, value: &Self::ValueType, limit: (i32, i32)) -> i32[src]

This function maps the value to i32, which is the drawing coordinate

fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<Self::ValueType>[src]

This function gives the key points that we can draw a grid based on this

fn range(&self) -> Range<Self::ValueType>[src]

Get the range of this value

Provided methods

fn axis_pixel_range(&self, limit: (i32, i32)) -> Range<i32>[src]

This function provides the on-axis part of its range

Implementors

impl Ranged for RangedCoordf32[src]

type FormatOption = NoDefaultFormatting

type ValueType = f32

fn map(&self, v: &f32, limit: (i32, i32)) -> i32[src]

fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<f32>[src]

fn range(&self) -> Range<f32>[src]

impl Ranged for RangedCoordf64[src]

type FormatOption = NoDefaultFormatting

type ValueType = f64

fn map(&self, v: &f64, limit: (i32, i32)) -> i32[src]

fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<f64>[src]

fn range(&self) -> Range<f64>[src]

impl Ranged for RangedCoordi32[src]

type FormatOption = DefaultFormatting

type ValueType = i32

fn map(&self, v: &i32, limit: (i32, i32)) -> i32[src]

fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<i32>[src]

fn range(&self) -> Range<i32>[src]

impl Ranged for RangedCoordi64[src]

type FormatOption = DefaultFormatting

type ValueType = i64

fn map(&self, v: &i64, limit: (i32, i32)) -> i32[src]

fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<i64>[src]

fn range(&self) -> Range<i64>[src]

impl Ranged for RangedCoordi128[src]

type FormatOption = DefaultFormatting

type ValueType = i128

fn map(&self, v: &i128, limit: (i32, i32)) -> i32[src]

fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<i128>[src]

fn range(&self) -> Range<i128>[src]

impl Ranged for RangedCoordu32[src]

type FormatOption = DefaultFormatting

type ValueType = u32

fn map(&self, v: &u32, limit: (i32, i32)) -> i32[src]

fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<u32>[src]

fn range(&self) -> Range<u32>[src]

impl Ranged for RangedCoordu64[src]

type FormatOption = DefaultFormatting

type ValueType = u64

fn map(&self, v: &u64, limit: (i32, i32)) -> i32[src]

fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<u64>[src]

fn range(&self) -> Range<u64>[src]

impl Ranged for RangedCoordu128[src]

type FormatOption = DefaultFormatting

type ValueType = u128

fn map(&self, v: &u128, limit: (i32, i32)) -> i32[src]

fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<u128>[src]

fn range(&self) -> Range<u128>[src]

impl Ranged for RangedCoordusize[src]

type FormatOption = DefaultFormatting

type ValueType = usize

fn map(&self, v: &usize, limit: (i32, i32)) -> i32[src]

fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<usize>[src]

fn range(&self) -> Range<usize>[src]

impl Ranged for RangedDuration[src]

type FormatOption = DefaultFormatting

type ValueType = Duration

fn range(&self) -> Range<Duration>[src]

fn map(&self, value: &Self::ValueType, limit: (i32, i32)) -> i32[src]

fn key_points<HintType: KeyPointHint>(
    &self,
    hint: HintType
) -> Vec<Self::ValueType>
[src]

impl<'a, T: PartialEq> Ranged for RangedSlice<'a, T>[src]

type FormatOption = DefaultFormatting

type ValueType = &'a T

fn range(&self) -> Range<&'a T>[src]

fn map(&self, value: &Self::ValueType, limit: (i32, i32)) -> i32[src]

fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<Self::ValueType>[src]

impl<D> Ranged for RangedDate<D> where
    D: Datelike + TimeValue + Sub<D, Output = Duration> + Add<Duration, Output = D> + Clone
[src]

type FormatOption = DefaultFormatting

type ValueType = D

fn range(&self) -> Range<D>[src]

fn map(&self, value: &Self::ValueType, limit: (i32, i32)) -> i32[src]

fn key_points<HintType: KeyPointHint>(
    &self,
    hint: HintType
) -> Vec<Self::ValueType>
[src]

impl<D: DiscreteRanged> Ranged for SegmentedCoord<D>[src]

type FormatOption = NoDefaultFormatting

type ValueType = SegmentValue<D::ValueType>

fn map(&self, value: &Self::ValueType, limit: (i32, i32)) -> i32[src]

fn key_points<HintType: KeyPointHint>(
    &self,
    hint: HintType
) -> Vec<Self::ValueType>
[src]

fn range(&self) -> Range<Self::ValueType>[src]

impl<DT> Ranged for RangedDateTime<DT> where
    DT: Datelike + Timelike + TimeValue + Clone + PartialOrd,
    DT: Add<Duration, Output = DT>,
    DT: Sub<DT, Output = Duration>,
    RangedDate<DT::DateType>: Ranged<ValueType = DT::DateType>, 
[src]

type FormatOption = DefaultFormatting

type ValueType = DT

fn range(&self) -> Range<DT>[src]

fn map(&self, value: &Self::ValueType, limit: (i32, i32)) -> i32[src]

fn key_points<HintType: KeyPointHint>(
    &self,
    hint: HintType
) -> Vec<Self::ValueType>
[src]

impl<P: DiscreteRanged, S: Ranged> Ranged for NestedRange<P, S>[src]

type FormatOption = NoDefaultFormatting

type ValueType = NestedValue<P::ValueType, S::ValueType>

fn range(&self) -> Range<Self::ValueType>[src]

fn map(&self, value: &Self::ValueType, limit: (i32, i32)) -> i32[src]

fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<Self::ValueType>[src]

impl<R: Ranged> Ranged for WithKeyPointMethod<R>[src]

type ValueType = R::ValueType

type FormatOption = R::FormatOption

fn range(&self) -> Range<Self::ValueType>[src]

fn map(&self, value: &Self::ValueType, limit: (i32, i32)) -> i32[src]

fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<Self::ValueType>[src]

fn axis_pixel_range(&self, limit: (i32, i32)) -> Range<i32>[src]

impl<R: Ranged> Ranged for WithKeyPoints<R> where
    R::ValueType: Clone
[src]

type ValueType = R::ValueType

type FormatOption = R::FormatOption

fn range(&self) -> Range<Self::ValueType>[src]

fn map(&self, value: &Self::ValueType, limit: (i32, i32)) -> i32[src]

fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<Self::ValueType>[src]

fn axis_pixel_range(&self, limit: (i32, i32)) -> Range<i32>[src]

impl<T: DiscreteRanged> Ranged for GroupBy<T>[src]

type FormatOption = NoDefaultFormatting

type ValueType = T::ValueType

fn map(&self, value: &T::ValueType, limit: (i32, i32)) -> i32[src]

fn range(&self) -> Range<T::ValueType>[src]

fn key_points<HintType: KeyPointHint>(
    &self,
    hint: HintType
) -> Vec<T::ValueType>
[src]

impl<T: Ranged, S: Clone, R: LinspaceRoundingMethod<T::ValueType>> Ranged for Linspace<T, S, R> where
    T::ValueType: Add<S, Output = T::ValueType> + PartialOrd + Clone
[src]

type FormatOption = NoDefaultFormatting

type ValueType = T::ValueType

fn range(&self) -> Range<T::ValueType>[src]

fn map(&self, value: &T::ValueType, limit: (i32, i32)) -> i32[src]

fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<T::ValueType>[src]

impl<T: TimeValue + Clone> Ranged for Monthly<T> where
    Range<T>: AsRangedCoord<Value = T>, 
[src]

type FormatOption = NoDefaultFormatting

type ValueType = T

fn range(&self) -> Range<T>[src]

fn map(&self, value: &Self::ValueType, limit: (i32, i32)) -> i32[src]

fn key_points<HintType: KeyPointHint>(
    &self,
    hint: HintType
) -> Vec<Self::ValueType>
[src]

impl<T: TimeValue + Clone> Ranged for Yearly<T> where
    Range<T>: AsRangedCoord<Value = T>, 
[src]

type FormatOption = NoDefaultFormatting

type ValueType = T

fn range(&self) -> Range<T>[src]

fn map(&self, value: &Self::ValueType, limit: (i32, i32)) -> i32[src]

fn key_points<HintType: KeyPointHint>(
    &self,
    hint: HintType
) -> Vec<Self::ValueType>
[src]

impl<V: LogScalable> Ranged for LogCoord<V>[src]

type FormatOption = DefaultFormatting

type ValueType = V

fn map(&self, value: &V, limit: (i32, i32)) -> i32[src]

fn key_points<Hint: KeyPointHint>(&self, hint: Hint) -> Vec<Self::ValueType>[src]

fn range(&self) -> Range<V>[src]