All Projects → milliams → Plotlib

milliams / Plotlib

Licence: mit
Data plotting library for Rust

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Plotlib

Plotjuggler
The Time Series Visualization Tool that you deserve.
Stars: ✭ 2,620 (+750.65%)
Mutual labels:  chart, plot
Plotille
Plot in the terminal using braille dots.
Stars: ✭ 99 (-67.86%)
Mutual labels:  histogram, plot
Charts
⚡ Laravel Charts — Build charts using laravel. The laravel adapter for Chartisan.
Stars: ✭ 2,337 (+658.77%)
Mutual labels:  chart, plot
Asciigraph
Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies.
Stars: ✭ 1,805 (+486.04%)
Mutual labels:  chart, plot
SwiftCharts
Easy to use and highly customizable charts library for iOS
Stars: ✭ 2,405 (+680.84%)
Mutual labels:  chart, plot
Aachartkit Swift
📈📊📱💻🖥️An elegant modern declarative data visualization chart framework for iOS, iPadOS and macOS. Extremely powerful, supports line, spline, area, areaspline, column, bar, pie, scatter, angular gauges, arearange, areasplinerange, columnrange, bubble, box plot, error bars, funnel, waterfall and polar chart types. 极其精美而又强大的跨平台数据可视化图表框架,支持柱状图、条形图、…
Stars: ✭ 1,962 (+537.01%)
Mutual labels:  chart, plot
Chatistics
💬 Python scripts to parse Messenger, Hangouts, WhatsApp and Telegram chat logs into DataFrames.
Stars: ✭ 814 (+164.29%)
Mutual labels:  histogram, plot
Asciichart
Nice-looking lightweight console ASCII line charts ╭┈╯ for NodeJS, browsers and terminal, no dependencies
Stars: ✭ 1,107 (+259.42%)
Mutual labels:  chart, plot
smag
Show Me A Graph - Command Line Graphing
Stars: ✭ 78 (-74.68%)
Mutual labels:  chart, plot
chart4s
Draw a web chart by Scala
Stars: ✭ 36 (-88.31%)
Mutual labels:  chart, plot
Nim Plotly
plotting library for nim-lang
Stars: ✭ 121 (-60.71%)
Mutual labels:  chart, plot
plotters-iced
📈 Iced backend for Plotters
Stars: ✭ 30 (-90.26%)
Mutual labels:  chart, plot
Highcharts Chart
Polymer Element wrapper for highcharts library. Seamlessly create various types of charts from one element.
Stars: ✭ 97 (-68.51%)
Mutual labels:  chart, plot
Computator.net
Computator.NET is a special kind of numerical software that is fast and easy to use but not worse than others feature-wise. It's features include: - Real and complex functions charts - Real and complex calculator - Real functions numerical calculations including different methods - Over 107 Elementary functions - Over 141 Special functions - Over 21 Matrix functions and operations - Scripting language with power to easy computations including matrices - You can declare your own custom functions with scripting language
Stars: ✭ 174 (-43.51%)
Mutual labels:  chart, plot
Highcharts trendline
HighCharts demo of scatter plot, including a trend line
Stars: ✭ 79 (-74.35%)
Mutual labels:  chart, plot
Swiftcharts
Easy to use and highly customizable charts library for iOS
Stars: ✭ 2,336 (+658.44%)
Mutual labels:  chart, plot
Uplot
📈 A small, fast chart for time series, lines, areas, ohlc & bars
Stars: ✭ 6,808 (+2110.39%)
Mutual labels:  chart, plot
Go Chartjs
golang library to make https://chartjs.org/ plots (this is vanilla #golang, not gopherjs)
Stars: ✭ 42 (-86.36%)
Mutual labels:  chart, plot
Py Ascii Graph
A simple python lib to print data as ascii histograms
Stars: ✭ 107 (-65.26%)
Mutual labels:  histogram, chart
quickhist
quickly plot a histogram on the CLI
Stars: ✭ 45 (-85.39%)
Mutual labels:  plot, histogram

plotlib

Rust codecov Crates.io MIT Documentation

plotlib is a generic data visualisation and plotting library for Rust. It is currently in the very early stages of development.

It can currently produce:

  • histograms
  • scatter plots
  • line graphs from data or from function definitions
  • box plots
  • bar charts

rendering them as either SVG or plain text.

The API is still very much in flux and is subject to change.

For example, code like:

use plotlib::page::Page;
use plotlib::repr::Plot;
use plotlib::view::ContinuousView;
use plotlib::style::{PointMarker, PointStyle};

fn main() {
    // Scatter plots expect a list of pairs
    let data1 = vec![
        (-3.0, 2.3),
        (-1.6, 5.3),
        (0.3, 0.7),
        (4.3, -1.4),
        (6.4, 4.3),
        (8.5, 3.7),
    ];

    // We create our scatter plot from the data
    let s1: Plot = Plot::new(data1).point_style(
        PointStyle::new()
            .marker(PointMarker::Square) // setting the marker to be a square
            .colour("#DD3355"),
    ); // and a custom colour

    // We can plot multiple data sets in the same view
    let data2 = vec![(-1.4, 2.5), (7.2, -0.3)];
    let s2: Plot = Plot::new(data2).point_style(
        PointStyle::new() // uses the default marker
            .colour("#35C788"),
    ); // and a different colour

    // The 'view' describes what set of data is drawn
    let v = ContinuousView::new()
        .add(s1)
        .add(s2)
        .x_range(-5., 10.)
        .y_range(-2., 6.)
        .x_label("Some varying variable")
        .y_label("The response of something");

    // A page with a single view is then saved to an SVG file
    Page::single(&v).save("scatter.svg").unwrap();
}

will produce output like:

scatter plot

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].