pub struct BarPlot { /* private fields */ }Expand description
A structure representing a bar plot.
The BarPlot struct allows for the creation and customization of bar plots with various options
for data, layout, and aesthetics. It supports both vertical and horizontal orientations, grouping
of data, error bars, and customizable markers and colors.
§Arguments
data- A reference to theDataFramecontaining the data to be plotted.labels- A string slice specifying the column name to be used for the x-axis (independent variable).values- A string slice specifying the column name to be used for the y-axis (dependent variable).orientation- An optionalOrientationenum specifying whether the plot should be horizontal or vertical.group- An optional string slice specifying the column name to be used for grouping data points.error- An optional string slice specifying the column name containing error values for the y-axis data.color- An optionalRgbvalue specifying the color of the markers to be used for the plot. This is used whengroupis not specified.colors- An optional vector ofRgbvalues specifying the colors to be used for the plot. This is used whengroupis specified to differentiate between groups.plot_title- An optionalTextstruct specifying the title of the plot.x_title- An optionalTextstruct specifying the title of the x-axis.y_title- An optionalTextstruct specifying the title of the y-axis.legend_title- An optionalTextstruct specifying the title of the legend.x_axis- An optional reference to anAxisstruct for customizing the x-axis.y_axis- An optional reference to anAxisstruct for customizing the y-axis.legend- An optional reference to aLegendstruct for customizing the legend of the plot (e.g., positioning, font, etc.).
§Example
use plotlars::{BarPlot, Legend, Orientation, Plot, Rgb, Text};
let dataset = df![
"animal" => &["giraffe", "giraffe", "orangutan", "orangutan", "monkey", "monkey"],
"gender" => &vec!["female", "male", "female", "male", "female", "male"],
"value" => &vec![20.0f32, 25.0, 14.0, 18.0, 23.0, 31.0],
"error" => &vec![1.0, 0.5, 1.5, 1.0, 0.5, 1.5],
]
.unwrap();
BarPlot::builder()
.data(&dataset)
.labels("animal")
.values("value")
.orientation(Orientation::Vertical)
.group("gender")
.error("error")
.colors(vec![
Rgb(255, 127, 80),
Rgb(64, 224, 208),
])
.plot_title(
Text::from("Bar Plot")
.font("Arial")
.size(18)
)
.x_title(
Text::from("animal")
.font("Arial")
.size(15)
)
.y_title(
Text::from("value")
.font("Arial")
.size(15)
)
.legend_title(
Text::from("gender")
.font("Arial")
.size(15)
)
.legend(
&Legend::new()
.orientation(Orientation::Horizontal)
.y(1.0)
.x(0.4)
)
.build()
.plot();
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for BarPlot
impl !RefUnwindSafe for BarPlot
impl !Send for BarPlot
impl !Sync for BarPlot
impl Unpin for BarPlot
impl !UnwindSafe for BarPlot
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
Converts
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>
Converts
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