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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
//! # Prismatica -- Scientific Colormaps for Rust
//!
//! 308 scientific colormaps + 70 discrete palettes from 10 collections:
//! matplotlib, Crameri, CET, CMOcean, ColorBrewer, CMasher, NCAR, CartoColors, Moreland, and d3.
//!
//! ```
//! use prismatica::crameri::BATLOW;
//! let color = BATLOW.eval(0.5);
//! println!("RGB: ({}, {}, {})", color.r, color.g, color.b);
//! ```
//!
//! ## Feature Flags
//!
//! | Feature | Colormaps | Description |
//! |---------|-----------|-------------|
//! | `core` (default) | 48 | matplotlib (8) + Crameri (40) |
//! | `cet` | +59 | Peter Kovesi's perceptually uniform maps |
//! | `cmocean` | +22 | Oceanographic colormaps |
//! | `colorbrewer` | +35 (+35 palettes) | Cynthia Brewer's cartographic palettes |
//! | `cmasher` | +53 | Astrophysics colormaps |
//! | `ncar` | +44 | NCAR NCL geoscience maps |
//! | `cartocolors` | +34 (+34 palettes) | CARTO cartographic maps |
//! | `moreland` | +6 | Cool-warm, black body, Kindlmann |
//! | `d3` | +7 (+1 palette) | Turbo, Rainbow, Sinebow, Cubehelix, Tableau10 |
//! | `all` | 308 (+70 palettes) | Everything |
//!
//! ## Choosing a Colormap
//!
//! - **Sequential data** (temperature, elevation, concentration):
//! `batlow`, `viridis`, `oslo`, `thermal`
//! - **Diverging data** (anomalies, residuals):
//! `berlin`, `vik`, `balance`, `smooth-cool-warm`
//! - **Cyclic data** (phase, direction, time-of-day):
//! `romaO`, `phase`, `twilight`
//! - **Categorical data** (labels, classes):
//! `SET2`, `DARK2`, `PAIRED`, `Tableau10`
//!
//! ## Minimum Supported Rust Version
//!
//! Prismatica requires Rust **1.85** or later (edition 2024).
extern crate alloc;
pub use *;
pub use *;
pub use *;
// -- Collection modules (feature-gated) --