#data #data-analytics #perspective #streaming #data-analysis #interactive

perspective-server

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

21 releases (stable)

new 3.3.0 Jan 14, 2025
3.2.1 Dec 23, 2024
3.1.7 Nov 30, 2024
3.1.3 Oct 31, 2024
3.0.0-alpha.1 May 11, 2024

#230 in Visualization

Download history 65/week @ 2024-09-26 18/week @ 2024-10-03 7/week @ 2024-10-10 272/week @ 2024-10-17 53/week @ 2024-10-24 201/week @ 2024-10-31 162/week @ 2024-11-07 382/week @ 2024-11-14 90/week @ 2024-11-21 320/week @ 2024-11-28 261/week @ 2024-12-05 78/week @ 2024-12-12 168/week @ 2024-12-19 19/week @ 2024-12-26 4/week @ 2025-01-02 98/week @ 2025-01-09

291 downloads per month
Used in 2 crates

Apache-2.0

1.5MB
34K SLoC

C++ 30K SLoC // 0.1% comments Rust 4.5K SLoC // 0.1% comments JavaScript 49 SLoC // 0.3% comments

Perspective Perspective

Build Status npm PyPI crates.io


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 WebAssembly, Python and Rust, 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.

Documentation

Examples

editablefilefractal
marketraycastingevictions
nypdstreamingcovid
webcammoviessuperstore
citibikeolympics

Media

@timkpaine @timbess @sc1f
@texodus @texodus

Dependencies

~3–6.5MB
~113K SLoC