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}