unicode-plot 0.1.0

unicode-plot-rs: Unicode terminal plotting library for Rust
Documentation
//! A Unicode terminal plotting library for Rust.
//!
//! This crate provides canvas-based rendering of plots using Unicode characters
//! (braille, block elements, ASCII, dot, and density characters) for display in
//! terminal emulators. It is a Rust port of the rendering layer from
//! [`unicode_plot.rb`](https://github.com/red-data-tools/unicode_plot.rb) and
//! [`UnicodePlots.jl`](https://github.com/JuliaPlots/UnicodePlots.jl).
//!
//! # Quick start
//!
//! ```
//! use unicode_plot::{barplot, BarplotOptions};
//!
//! let plot = barplot(
//!     &["cat", "dog", "parrot"],
//!     &[30, 45, 12],
//!     BarplotOptions::default(),
//! ).unwrap();
//!
//! let mut output = Vec::new();
//! plot.render(&mut output, false).unwrap();
//! let text = String::from_utf8(output).unwrap();
//! assert!(text.contains("dog"));
//! ```

mod barplot;
pub mod border;
mod boxplot;
pub mod canvas;
pub mod color;
pub mod graphics;
mod histogram;
mod lineplot;
mod math;
mod plot;
mod render;

pub use barplot::{
    BarplotError, BarplotGraphics, BarplotOptions, barplot, barplot_add, parse_border_type,
};
pub use boxplot::{BoxplotError, BoxplotGraphics, BoxplotOptions, boxplot, boxplot_add};
pub use histogram::{ClosedInterval, HistogramError, HistogramOptions, histogram};
pub use lineplot::{
    GridCanvas, LineplotError, LineplotOptions, LineplotSeriesOptions, StairStyle, annotate,
    densityplot, densityplot_add, lineplot, lineplot_add, lineplot_add_slope, lineplot_add_y,
    lineplot_y, scatterplot, scatterplot_add, scatterplot_add_y, scatterplot_y, stairs, stairs_add,
};
pub use plot::{Annotation, DecorationPosition, EdgeDecorations, Plot, PlotAnnotations};

#[cfg(test)]
mod test_util;