use crate::options::{AxisOptions, BasePlotOptions, PlotOptions};
use derive_builder::Builder;
#[derive(Builder, Debug, Clone)]
#[builder(pattern = "owned")]
pub struct SpectralSignaturePlotOptions {
#[builder(default)]
pub base: BasePlotOptions,
#[builder(default)]
pub x_axis: Option<AxisOptions>,
#[builder(default)]
pub y_axis: Option<AxisOptions>,
#[builder(default = "String::from(\"#1f77b4\")")]
pub line_color: String,
#[builder(default = "2.0")]
pub line_width: f64,
#[builder(default = "true")]
pub show_grid: bool,
}
impl PlotOptions for SpectralSignaturePlotOptions {
fn base(&self) -> &BasePlotOptions {
&self.base
}
}
impl SpectralSignaturePlotOptions {
pub fn new() -> SpectralSignaturePlotOptionsBuilder {
SpectralSignaturePlotOptionsBuilder::default()
}
}