pub struct WithKeyPoints<Inner: Ranged> { /* private fields */ }
Expand description

The coordinate decorator that binds a key point vector. Normally, all the ranged coordinate implements its own keypoint algorithm to determine how to render the tick mark and mesh grid. This decorator allows customized tick mark specifiied by vector. See BindKeyPoints::with_key_points for details. Note: For any coordinate spec wrapped by this decorator, the maxium number of labels configured by MeshStyle will be ignored and the key point function will always returns the entire vector

Implementations§

source§

impl<I: Ranged> WithKeyPoints<I>

source

pub fn with_light_points<T: IntoIterator<Item = I::ValueType>>( self, iter: T ) -> Self

Specify the light key points, which is used to render the light mesh line

source

pub fn bold_points(&self) -> &[I::ValueType]

Get a reference to the bold points

source

pub fn bold_points_mut(&mut self) -> &mut [I::ValueType]

Get a mut reference to the bold points

source

pub fn light_points(&self) -> &[I::ValueType]

Get a reference to light key points

source

pub fn light_points_mut(&mut self) -> &mut [I::ValueType]

Get a mut reference to the light key points

Trait Implementations§

source§

impl<R: DiscreteRanged> DiscreteRanged for WithKeyPoints<R>where R::ValueType: Clone,

source§

fn size(&self) -> usize

Get the number of element in the range Note: we assume that all the ranged discrete coordinate has finite value Read more
source§

fn index_of(&self, value: &Self::ValueType) -> Option<usize>

Map a value to the index Read more
source§

fn from_index(&self, index: usize) -> Option<Self::ValueType>

Reverse map the index to the value Read more
source§

fn values(&self) -> DiscreteValueIter<'_, Self>where Self: Sized,

Return a iterator that iterates over the all possible values Read more
source§

fn previous(&self, value: &Self::ValueType) -> Option<Self::ValueType>

Returns the previous value in this range Read more
source§

fn next(&self, value: &Self::ValueType) -> Option<Self::ValueType>

Returns the next value in this range Read more
source§

impl<R: Ranged> Ranged for WithKeyPoints<R>where R::ValueType: Clone,

§

type ValueType = <R as Ranged>::ValueType

The type of this value in this range specification
§

type FormatOption = <R as Ranged>::FormatOption

This marker decides if Plotters default ValueFormatter implementation should be used. This associated type can be one of the following two types: Read more
source§

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

Get the range of this value
source§

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

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

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

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

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

This function provides the on-axis part of its range

Auto Trait Implementations§

§

impl<Inner> RefUnwindSafe for WithKeyPoints<Inner>where Inner: RefUnwindSafe, <Inner as Ranged>::ValueType: RefUnwindSafe,

§

impl<Inner> Send for WithKeyPoints<Inner>where Inner: Send, <Inner as Ranged>::ValueType: Send,

§

impl<Inner> Sync for WithKeyPoints<Inner>where Inner: Sync, <Inner as Ranged>::ValueType: Sync,

§

impl<Inner> Unpin for WithKeyPoints<Inner>where Inner: Unpin, <Inner as Ranged>::ValueType: Unpin,

§

impl<Inner> UnwindSafe for WithKeyPoints<Inner>where Inner: UnwindSafe, <Inner as Ranged>::ValueType: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> AsRangedCoord for Twhere T: Ranged,

§

type CoordDescType = T

Type to describe a coordinate system
§

type Value = <T as Ranged>::ValueType

Type for values in the given coordinate system
source§

impl<T> BindKeyPointMethod for Twhere T: AsRangedCoord,

source§

fn with_key_point_func<F: Fn(usize) -> Vec<Self::Value> + 'static>( self, func: F ) -> WithKeyPointMethod<Self::CoordDescType>

Bind a existing coordinate spec with a given key points algorithm. See WithKeyPointMethod for more details. Example: Read more
source§

impl<T> BindKeyPoints for Twhere T: AsRangedCoord,

source§

fn with_key_points( self, points: Vec<Self::Value> ) -> WithKeyPoints<Self::CoordDescType>

Bind a existing coordinate spec with a given key points vector. See WithKeyPoints for more details. Example: Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoLinspace for Twhere T: AsRangedCoord,

source§

fn step<S: Clone>( self, val: S ) -> Linspace<Self::CoordDescType, S, Exact<Self::Value>>where Self::Value: Add<S, Output = Self::Value> + PartialOrd + Clone,

Set the step value, make a linspace coordinate from the given range. By default the matching method use the exact match Read more
source§

impl<R> IntoPartialAxis for Rwhere R: AsRangedCoord,

source§

fn partial_axis( self, axis_range: Range<<Self::CoordDescType as Ranged>::ValueType> ) -> PartialAxis<Self::CoordDescType>

Make the partial axis Read more
source§

impl<DC> ReversibleRanged for DCwhere DC: DiscreteRanged,

source§

fn unmap( &self, input: i32, limit: (i32, i32) ) -> Option<<DC as Ranged>::ValueType>

Perform the reverse mapping
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.