showata
A library of to show data (in browser, evcxr_jupyter) as table, chart....
The crate provides display for:
- image
- vector and slice (as table)
- ndarray's Array (as table)
- nalgebra's matrix (as table)
Feedbacks (comments, tickets, PR,...) are welcomes.
Usages
Inside Jupyter
Inside your jupyter (rust) notebook:
:dep showata = { version = "0.3", features=["show_ndarray"]}
:dep ndarray = "0.14"
use showata::Showable;
use ndarray::Array2;
let data: Array2 = Array2::<f64>::zeros((3, 4));
data.show()
Inside Editor
Inside your favorite editor/IDE:
use showata::Showable;
use ndarray::Array2;
let data = Array2::<f64>::zeros((3, 4));
data.show().unwrap();
# By default the data will be shown inside your web browser.
cargo run
# Show nothing
SHOWATA_MEDIUM=Noop cargo run
Show Chart
see vega_lite_3
Notes
Currently the project groups showers as features
instead of packages. But it could change in the futures if use of package is more useful (than just "it's the recommended way in the cargo doc").
Why features (vs packages):
- less lines of code to insert into a notebook (but longer)
- ability to share a
trait
and provideimpl
for external crates
Links
- evcxr_jupyter A Jupyter Kernel for the Rust programming language.
- nalgebra A linear algebra library for the Rust programming language.
- Wiki - AGuideToRustGraphicsLibraries2019
- A Dramatic Tour through Python’s Data Visualization Landscape (including ggplot and Altair) – Regress to Impress
- Specifying Data in Altair — Altair 3.0.0 documentation
- Visualization — list of Rust libraries/crates // Lib.rs
- Quicktype (got issue with the alternative https://transform.now.sh/json-to-rust-serde) was used to bootstrap
vegalite.rs
from the vega-lite's json schema