Struct ChartContext

Source
pub struct ChartContext<'a, DB: DrawingBackend, CT: CoordTranslate> { /* private fields */ }
Expand description

The context of the chart. This is the core object of Plotters. Any plot/chart is abstracted as this type, and any data series can be placed to the chart context.

Implementations§

Source§

impl<'a, DB: DrawingBackend, CT: CoordTranslate> ChartContext<'a, DB, CT>

Source

pub fn into_chart_state(self) -> ChartState<CT>

Convert a chart context into a chart state, by doing so, the chart context is consumed and a saved chart state is created for later use.

Source

pub fn into_shared_chart_state(self) -> ChartState<Arc<CT>>

Convert the chart context into a sharable chart state. Normally a chart state can not be clone, since the coordinate spec may not be able to be cloned. In this case, we can use an Arc get the coordinate wrapped thus the state can be cloned and shared by multiple chart context

Source§

impl<'a, DB: DrawingBackend, CT: CoordTranslate + Clone> ChartContext<'a, DB, CT>

Source

pub fn to_chart_state(&self) -> ChartState<CT>

Make the chart context, do not consume the chart context and clone the coordinate spec

Source§

impl<'a, DB: DrawingBackend, XT: Debug, YT: Debug, X: Ranged<ValueType = XT>, Y: Ranged<ValueType = YT>> ChartContext<'a, DB, RangedCoord<X, Y>>

Source

pub fn configure_mesh<'b>(&'b mut self) -> MeshStyle<'a, 'b, X, Y, DB>

Initialize a mesh configuration object and mesh drawing can be finalized by calling the function MeshStyle::draw

Source§

impl<'a, DB: DrawingBackend + 'a, CT: CoordTranslate> ChartContext<'a, DB, CT>

Source

pub fn configure_series_labels<'b>( &'b mut self, ) -> SeriesLabelStyle<'a, 'b, DB, CT>

Configure the styles for drawing series labels in the chart

Source

pub fn plotting_area(&self) -> &DrawingArea<DB, CT>

Get a reference of underlying plotting area

Source§

impl<'a, DB: DrawingBackend, CT: CoordTranslate> ChartContext<'a, DB, CT>

Source

pub fn as_coord_spec(&self) -> &CT

Source§

impl<'a, DB: DrawingBackend, CT: ReverseCoordTranslate> ChartContext<'a, DB, CT>

Source

pub fn into_coord_trans(self) -> impl Fn(BackendCoord) -> Option<CT::From>

Convert the chart context into an closure that can be used for coordinate translation

Source§

impl<'a, DB: DrawingBackend, X: Ranged, Y: Ranged> ChartContext<'a, DB, Arc<RangedCoord<X, Y>>>

Source

pub fn draw_series<E, R, S>( &mut self, series: S, ) -> Result<&mut SeriesAnno<'a, DB>, DrawingAreaErrorKind<DB::ErrorType>>
where for<'b> &'b E: PointCollection<'b, (X::ValueType, Y::ValueType)>, E: Drawable<DB>, R: Borrow<E>, S: IntoIterator<Item = R>,

Draw a data series. A data series in Plotters is abstracted as an iterator of elements

Source§

impl<'a, DB: DrawingBackend, X: Ranged, Y: Ranged> ChartContext<'a, DB, RangedCoord<X, Y>>

Source

pub fn x_range(&self) -> Range<X::ValueType>

Get the range of X axis

Source

pub fn y_range(&self) -> Range<Y::ValueType>

Get range of the Y axis

Source

pub fn backend_coord( &self, coord: &(X::ValueType, Y::ValueType), ) -> BackendCoord

Maps the coordinate to the backend coordinate. This is typically used with an interactive chart.

Source

pub fn draw_series<E, R, S>( &mut self, series: S, ) -> Result<&mut SeriesAnno<'a, DB>, DrawingAreaErrorKind<DB::ErrorType>>
where for<'b> &'b E: PointCollection<'b, (X::ValueType, Y::ValueType)>, E: Drawable<DB>, R: Borrow<E>, S: IntoIterator<Item = R>,

Draw a data series. A data series in Plotters is abstracted as an iterator of elements

Source

pub fn set_secondary_coord<SX: AsRangedCoord, SY: AsRangedCoord>( self, x_coord: SX, y_coord: SY, ) -> DualCoordChartContext<'a, DB, RangedCoord<X, Y>, RangedCoord<SX::CoordDescType, SY::CoordDescType>>

Convert this chart context into a dual axis chart context

  • x_coord: The coordinate spec for the X axis
  • y_coord: The coordinate spec for the Y axis
  • returns The newly created dual spec chart context

Trait Implementations§

Source§

impl<'a, DB: DrawingBackend, CT1: CoordTranslate, CT2: CoordTranslate> Borrow<ChartContext<'a, DB, CT1>> for DualCoordChartContext<'a, DB, CT1, CT2>

Source§

fn borrow(&self) -> &ChartContext<'a, DB, CT1>

Immutably borrows from an owned value. Read more
Source§

impl<'a, DB: DrawingBackend, CT1: CoordTranslate, CT2: CoordTranslate> BorrowMut<ChartContext<'a, DB, CT1>> for DualCoordChartContext<'a, DB, CT1, CT2>

Source§

fn borrow_mut(&mut self) -> &mut ChartContext<'a, DB, CT1>

Mutably borrows from an owned value. Read more
Source§

impl<'a, 'b, DB, CT> From<&ChartContext<'a, DB, CT>> for ChartState<CT>

Source§

fn from(chart: &ChartContext<'a, DB, CT>) -> ChartState<CT>

Converts to this type from the input type.
Source§

impl<'a, DB: DrawingBackend, CT: CoordTranslate> From<ChartContext<'a, DB, CT>> for ChartState<CT>

Source§

fn from(chart: ChartContext<'a, DB, CT>) -> ChartState<CT>

Converts to this type from the input type.

Auto Trait Implementations§

§

impl<'a, DB, CT> Freeze for ChartContext<'a, DB, CT>
where CT: Freeze,

§

impl<'a, DB, CT> !RefUnwindSafe for ChartContext<'a, DB, CT>

§

impl<'a, DB, CT> !Send for ChartContext<'a, DB, CT>

§

impl<'a, DB, CT> !Sync for ChartContext<'a, DB, CT>

§

impl<'a, DB, CT> Unpin for ChartContext<'a, DB, CT>
where CT: Unpin, DB: Unpin,

§

impl<'a, DB, CT> !UnwindSafe for ChartContext<'a, DB, CT>

Blanket Implementations§

Source§

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S
where T: Component + Float, Swp: WhitePoint, Dwp: WhitePoint, D: AdaptFrom<S, Swp, Dwp, T>,

Source§

fn adapt_into_using<M>(self, method: M) -> D
where M: TransformMatrix<Swp, Dwp, T>,

Convert the source color to the destination color using the specified method
Source§

fn adapt_into(self) -> D

Convert the source color to the destination color using the bradford method by default
Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<T, U> ConvertInto<U> for T
where U: ConvertFrom<T>,

Source§

fn convert_into(self) -> U

Convert into T with values clamped to the color defined bounds Read more
Source§

fn convert_unclamped_into(self) -> U

Convert into T. The resulting color might be invalid in its color space Read more
Source§

fn try_convert_into(self) -> Result<U, OutOfBounds<U>>

Convert into T, returning ok if the color is inside of its defined range, otherwise an OutOfBounds error is returned which contains the unclamped color. 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 T
where 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> SetParameter for T

Source§

fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result
where T: Parameter<Self>,

Sets value as a parameter of self.
Source§

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

Source§

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 T
where U: TryFrom<T>,

Source§

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.