Skip to main content

plot_redactor/model/
plot.rs

1//! Plot aggregate state.
2//!
3//! `PlotModel` is the central in-memory document edited by UI controls and
4//! consumed by rendering/export logic.
5
6use crate::model::types::*;
7
8/// Main plot document.
9#[derive(Clone)]
10pub struct PlotModel {
11    pub axes: AxesConfig,
12    pub series: Vec<SeriesModel>,
13    pub legend: LegendConfig,
14    pub layout: LayoutConfig,
15}
16
17/// One logical visual series on the chart.
18#[derive(Clone)]
19pub struct SeriesModel {
20    pub id: SeriesId,
21    pub name: String,
22    pub x_column: String,
23    pub y_column: String,
24    pub style: SeriesStyle,
25    pub visible: bool,
26}