pub struct MaturityScale {
pub base_resolution: u32,
pub minimum_range: u32,
pub start: u32,
}Expand description
A horizontal scale of maturities in months, for yield curves, encoded with key_time.
Maturities read 3M below a year and 2Y or 2Y6M from a year on. The axis labels
multiples of 10 years first, then of 5 and 3 years, whole years, half years, quarters and
months, and draws the longest kind shown in bold.
The bars of a chart take one slot each whatever their keys, so a curve spaced by maturity
needs a slot every month: give the main series the whitespace bars and
draw each curve as a series of its own, placed on them by key.
Fields§
§base_resolution: u32Months between neighbouring slots.
minimum_range: u32Months the whitespace spans at least, from start.
start: u32Maturity of the first slot in months.
Implementations§
Source§impl MaturityScale
impl MaturityScale
Sourcepub fn whitespace(&self, last: f64) -> Vec<Bar>
pub fn whitespace(&self, last: f64) -> Vec<Bar>
Whitespace bars every base_resolution months from start up to last, the longest
maturity on the chart, or up to minimum_range when that is later.
Non-finite last values fall back to minimum_range; finite values are capped at
12,000 months (1,000 years) before comparison, without limiting minimum_range.
Trait Implementations§
Source§impl Clone for MaturityScale
impl Clone for MaturityScale
Source§fn clone(&self) -> MaturityScale
fn clone(&self) -> MaturityScale
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for MaturityScale
Source§impl Debug for MaturityScale
impl Debug for MaturityScale
Source§impl Default for MaturityScale
impl Default for MaturityScale
impl Eq for MaturityScale
Source§impl HorizontalScale for MaturityScale
impl HorizontalScale for MaturityScale
Source§fn tick_marks(
&self,
points: &[(DateTime<Utc>, usize)],
layout: &TickMarkLayout,
) -> Vec<TickMark>
fn tick_marks( &self, points: &[(DateTime<Utc>, usize)], layout: &TickMarkLayout, ) -> Vec<TickMark>
points, the key and logical index of each bar in view in
order, extended into whitespace on both sides using the chart’s full-history time
mapping. When the keys reach before the first bar, every index is shifted by the same
number of slots, so only the order of the indices and their differences carry meaning.
The renderer places each mark at its key and skips labels that would overlap.Source§impl PartialEq for MaturityScale
impl PartialEq for MaturityScale
impl StructuralPartialEq for MaturityScale
Auto Trait Implementations§
impl Freeze for MaturityScale
impl RefUnwindSafe for MaturityScale
impl Send for MaturityScale
impl Sync for MaturityScale
impl Unpin for MaturityScale
impl UnsafeUnpin for MaturityScale
impl UnwindSafe for MaturityScale
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more