1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
//! Rust plotting library using Python (Matplotlib)
//!
//! # Examples
//!
//! ```
//! use plotpy::*;
//!
//! fn main() -> Result<(), Box<dyn std::error::Error>> {
//!     let x = &[1.0, 2.0, 3.0, 4.0, 5.0];
//!     let y = &[1.0, 4.0, 9.0, 16.0, 25.0];
//!     let mut curve = Curve::new();
//!     curve.draw(x, y);
//!
//!     let mut plot = Plot::new();
//!     plot.subplot(2, 2, 1);
//!     plot.add(&curve);
//!
//!     plot.subplot(2, 2, 2);
//!     plot.add(&curve);
//!
//!     plot.subplot(2, 2, 3);
//!     plot.add(&curve);
//!
//!     plot.subplot(2, 2, 4);
//!     plot.add(&curve);
//!     plot.grid_and_labels("x", "y");
//!
//!     let message = plot.save("/tmp/plotpy", "example_main", "svg")?;
//!     println!("{}", message);
//!     Ok(())
//! }
//! ```
//!
//! ![example_main.svg](https://raw.githubusercontent.com/cpmech/plotpy/main/figures/example_main.svg)
//!
//! # Todo
//!
//! - [ ] Test Contour
//! - [ ] Test Graphs3d
//! - [ ] Test Histogram
//! - [ ] Test Legend
//! - [ ] Test Shapes
//! - [ ] Test Text
//!

// modules ////////////////////////////////////////
mod constants;
mod contour;
mod curve;
mod fileio;
mod graph3d;
mod histogram;
mod legend;
mod plot;
mod scatter;
mod shapes;
mod text;
mod util;
pub use crate::constants::*;
pub use crate::contour::*;
pub use crate::curve::*;
use crate::fileio::*;
pub use crate::graph3d::*;
pub use crate::histogram::*;
pub use crate::legend::*;
pub use crate::plot::*;
pub use crate::scatter::*;
pub use crate::shapes::*;
pub use crate::text::*;
use crate::util::*;