#perspective #streaming #dataset #python #visualization #analytics #component

perspective-server

A data visualization and analytics component, especially well-suited for large and/or streaming datasets

9 releases (4 stable)

3.0.3 Sep 3, 2024
3.0.2 Aug 30, 2024
3.0.0-rc.1 Jul 27, 2024
3.0.0-alpha.1 May 11, 2024

#431 in WebAssembly

Download history 1/week @ 2024-06-09 1/week @ 2024-06-16 122/week @ 2024-07-21 44/week @ 2024-07-28 136/week @ 2024-08-04 403/week @ 2024-08-11 151/week @ 2024-08-18 286/week @ 2024-08-25 212/week @ 2024-09-01 16/week @ 2024-09-08

678 downloads per month
Used in 2 crates

Apache-2.0

1.5MB
37K SLoC

C++ 33K SLoC // 0.1% comments Rust 3.5K SLoC // 0.1% comments JavaScript 33 SLoC // 0.4% comments

Perspective Perspective

npm PyPI crates.io Build Status


Perspective is an interactive analytics and data visualization component, which is especially well-suited for large and/or streaming datasets. Use it to create user-configurable reports, dashboards, notebooks and applications, then deploy stand-alone in the browser, or in concert with Python and/or Jupyterlab.

Features

  • A fast, memory efficient streaming query engine, written in C++ and compiled for both WebAssembly and Python, with read/write/streaming for Apache Arrow, and a high-performance columnar expression language based on ExprTK.

  • A framework-agnostic User Interface packaged as a Custom Element, powered either in-browser via WebAssembly or virtually via WebSocket server (Python/Node).

  • A JupyterLab widget and Python client library, for interactive data analysis in a notebook, as well as scalable production Voila applications.

Examples

editablefilefractal
marketraycastingevictions
nypdmagicstreaming
covidwebcammovies
superstorecitibikeolympics
jupyterlab

Documentation

Community / Media

Dependencies

~3–6.5MB
~110K SLoC