Perspective is an interactive analytics and data visualization component, which is especially well-suited for large and/or streaming datasets. Originally developed at J.P. Morgan and open-sourced through the Fintech Open Source Foundation (FINOS), Perspective makes it simple to build user-configurable analytics entirely in the browser, or in concert with Python and Jupyterlab. Use it to create reports, dashboards, notebooks and applications, with static data or streaming updates via Apache Arrow.
-
A fast, memory efficient streaming query engine, written in C++ and compiled for both WebAssembly and Python with support for (read/write/stream)ing Apache Arrow, and a high-performance columnar expression language based on ExprTK.
-
A framework-agnostic User Interface Custom Element, powered either in-browser via WebWorker (WebAssembly) or virtually via WebSocket server (Python/Node), as well as a suite of Datagrid and D3FC Chart plugins.
-
A JupyterLab widget and Python client library, for interactive data analysis in a notebook, as well as scalable production Voila and Holoviz applications.
Examples
Movies | Magic | NFT |
NYPD CCRB | Olympics | COVID |
Custom Styles | BTC | Fractal |
Editable | Maps Airports | Streaming |
NYC Citibike | JupyterLab Plugin | Maps Citibike |
Polygon.io | CSV | Superstore |
Documentation
- Project Site
- Table
- View
- Javascript User Guide
- Python User Guide
- Data Binding
- Developer Guide
- Perspective API
- Perspective Viewer API
- Perspective Python API