plotters::chart

Struct ChartBuilder

Source
pub struct ChartBuilder<'a, 'b, DB: DrawingBackend> { /* private fields */ }
Expand description

The helper object to create a chart context, which is used for the high-level figure drawing.

With the help of this object, we can convert a basic drawing area into a chart context, which allows the high-level charting API being used on the drawing area.

See ChartBuilder::on() for more information and examples.

Implementations§

Source§

impl<'a, 'b, DB: DrawingBackend> ChartBuilder<'a, 'b, DB>

Source

pub fn on(root: &'a DrawingArea<DB, Shift>) -> Self

Create a chart builder on the given drawing area

  • root: The root drawing area
  • Returns: The chart builder object
§Example
use plotters::prelude::*;
let drawing_area = SVGBackend::new("chart_builder_on.svg", (300, 200)).into_drawing_area();
drawing_area.fill(&WHITE).unwrap();
let mut chart_builder = ChartBuilder::on(&drawing_area);
chart_builder.margin(5).set_left_and_bottom_label_area_size(35)
.caption("Figure title or caption", ("Calibri", 20, FontStyle::Italic, &RED).into_text_style(&drawing_area));
let mut chart_context = chart_builder.build_cartesian_2d(0.0..3.8, 0.0..2.8).unwrap();
chart_context.configure_mesh().draw().unwrap();

The result is a chart with customized margins, label area sizes, and title:

Source

pub fn margin<S: SizeDesc>(&mut self, size: S) -> &mut Self

Sets the size of the four margins of the chart.

  • size: The desired size of the four chart margins in backend units (pixels).

See ChartBuilder::on() for more information and examples.

Source

pub fn margin_top<S: SizeDesc>(&mut self, size: S) -> &mut Self

Sets the size of the top margin of the chart.

  • size: The desired size of the margin in backend units (pixels).

See ChartBuilder::on() for more information and examples.

Source

pub fn margin_bottom<S: SizeDesc>(&mut self, size: S) -> &mut Self

Sets the size of the bottom margin of the chart.

  • size: The desired size of the margin in backend units (pixels).

See ChartBuilder::on() for more information and examples.

Source

pub fn margin_left<S: SizeDesc>(&mut self, size: S) -> &mut Self

Sets the size of the left margin of the chart.

  • size: The desired size of the margin in backend units (pixels).

See ChartBuilder::on() for more information and examples.

Source

pub fn margin_right<S: SizeDesc>(&mut self, size: S) -> &mut Self

Sets the size of the right margin of the chart.

  • size: The desired size of the margin in backend units (pixels).

See ChartBuilder::on() for more information and examples.

Source

pub fn set_all_label_area_size<S: SizeDesc>(&mut self, size: S) -> &mut Self

Sets the size of the four label areas of the chart.

  • size: The desired size of the four label areas in backend units (pixels).

See ChartBuilder::on() for more information and examples.

Source

pub fn set_left_and_bottom_label_area_size<S: SizeDesc>( &mut self, size: S, ) -> &mut Self

Sets the size of the left and bottom label areas of the chart.

  • size: The desired size of the left and bottom label areas in backend units (pixels).

See ChartBuilder::on() for more information and examples.

Source

pub fn x_label_area_size<S: SizeDesc>(&mut self, size: S) -> &mut Self

Sets the size of the X label area at the bottom of the chart.

  • size: The desired size of the X label area in backend units (pixels). If set to 0, the X label area is removed.

See ChartBuilder::on() for more information and examples.

Source

pub fn y_label_area_size<S: SizeDesc>(&mut self, size: S) -> &mut Self

Sets the size of the Y label area to the left of the chart.

  • size: The desired size of the Y label area in backend units (pixels). If set to 0, the Y label area is removed.

See ChartBuilder::on() for more information and examples.

Source

pub fn top_x_label_area_size<S: SizeDesc>(&mut self, size: S) -> &mut Self

Sets the size of the X label area at the top of the chart.

  • size: The desired size of the top X label area in backend units (pixels). If set to 0, the top X label area is removed.

See ChartBuilder::on() for more information and examples.

Source

pub fn right_y_label_area_size<S: SizeDesc>(&mut self, size: S) -> &mut Self

Sets the size of the Y label area to the right of the chart.

  • size: The desired size of the Y label area in backend units (pixels). If set to 0, the Y label area to the right is removed.

See ChartBuilder::on() for more information and examples.

Source

pub fn set_label_area_size<S: SizeDesc>( &mut self, pos: LabelAreaPosition, size: S, ) -> &mut Self

Sets the size of a chart label area.

  • pos: The position of the desired label area to adjust
  • size: The desired size of the label area in backend units (pixels). If set to 0, the label area is removed.

See ChartBuilder::on() for more information and examples.

Source

pub fn caption<S: AsRef<str>, Style: IntoTextStyle<'b>>( &mut self, caption: S, style: Style, ) -> &mut Self

Sets the title or caption of the chart.

  • caption: The caption of the chart
  • style: The text style

The title or caption will be centered at the top of the drawing area.

See ChartBuilder::on() for more information and examples.

Source

pub fn build_ranged<'c, X: AsRangedCoord, Y: AsRangedCoord>( &mut self, x_spec: X, y_spec: Y, ) -> Result<ChartContext<'c, DB, Cartesian2d<X::CoordDescType, Y::CoordDescType>>, DrawingAreaErrorKind<DB::ErrorType>>

👎Deprecated: build_ranged has been renamed to build_cartesian_2d and is to be removed in the future.

This function has been renamed to ChartBuilder::build_cartesian_2d() and is to be removed in the future.

Source

pub fn build_cartesian_2d<'c, X: AsRangedCoord, Y: AsRangedCoord>( &mut self, x_spec: X, y_spec: Y, ) -> Result<ChartContext<'c, DB, Cartesian2d<X::CoordDescType, Y::CoordDescType>>, DrawingAreaErrorKind<DB::ErrorType>>

Builds a chart with a 2D Cartesian coordinate system.

  • x_spec: Specifies the X axis range and data properties
  • y_spec: Specifies the Y axis range and data properties
  • Returns: A ChartContext object, ready to visualize data.

See ChartBuilder::on() and ChartContext::configure_mesh() for more information and examples.

Source

pub fn build_cartesian_3d<'c, X: AsRangedCoord, Y: AsRangedCoord, Z: AsRangedCoord>( &mut self, x_spec: X, y_spec: Y, z_spec: Z, ) -> Result<ChartContext<'c, DB, Cartesian3d<X::CoordDescType, Y::CoordDescType, Z::CoordDescType>>, DrawingAreaErrorKind<DB::ErrorType>>

Builds a chart with a 3D Cartesian coordinate system.

  • x_spec: Specifies the X axis range and data properties
  • y_spec: Specifies the Y axis range and data properties
  • z_sepc: Specifies the Z axis range and data properties
  • Returns: A ChartContext object, ready to visualize data.

See ChartBuilder::on() and ChartContext::configure_axes() for more information and examples.

Auto Trait Implementations§

§

impl<'a, 'b, DB> Freeze for ChartBuilder<'a, 'b, DB>

§

impl<'a, 'b, DB> !RefUnwindSafe for ChartBuilder<'a, 'b, DB>

§

impl<'a, 'b, DB> !Send for ChartBuilder<'a, 'b, DB>

§

impl<'a, 'b, DB> !Sync for ChartBuilder<'a, 'b, DB>

§

impl<'a, 'b, DB> Unpin for ChartBuilder<'a, 'b, DB>

§

impl<'a, 'b, DB> !UnwindSafe for ChartBuilder<'a, 'b, DB>

Blanket Implementations§

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> 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, 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.

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 184 bytes