Skip to main content

perspective-python

PyPI

Perspective is an open-source data grid, pivot table and charting component for large, real-time and streaming datasets.

perspective-python is the Python distribution of Perspective:

  • A streaming query engine — Table and View — with incremental pivots, aggregates, filters, expressions and joins, reading and writing Apache Arrow, CSV, JSON, pandas, polars and pyarrow. Tables can be memory-mapped from disk with page_to_disk=True to exceed available memory.
  • PerspectiveWidget, an interactive data grid, pivot table and charting widget for JupyterLab, Jupyter Notebook, VS Code notebooks, Google Colab and marimo, built on anywidget.
  • WebSocket handlers for Tornado, Starlette (FastAPI) and aiohttp, which serve real-time dashboards to <perspective-viewer> in the browser.
  • Virtual servers which run the same UI directly against DuckDB, ClickHouse, PostgreSQL and Polars, with no data copy.

Installation

pip install perspective-python

For notebooks, install the jupyter extra:

pip install "perspective-python[jupyter]"

An interactive pivot table in Jupyter

import pandas as pd
from perspective.widget import PerspectiveWidget

df = pd.read_csv("superstore.csv")
PerspectiveWidget(df, plugin="Y Bar", group_by=["Region"], columns=["Sales"])

A streaming Table

import perspective

server = perspective.Server()
client = server.new_local_client()
table = client.table({"symbol": "string", "price": "float"}, name="prices")
table.update([{"symbol": "AAPL", "price": 189.5}])

A real-time dashboard server

import tornado.ioloop
import tornado.web
from perspective.handlers.tornado import PerspectiveTornadoHandler

app = tornado.web.Application([
    (r"/websocket", PerspectiveTornadoHandler, {"perspective_server": server}),
])

app.listen(8888)
tornado.ioloop.IOLoop.current().start()

Any number of browser clients can then open the prices table over WebSocket and receive every update() as it happens.

Documentation

Metadata

Release files for perspective-python 5.7.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for perspective-python 5.7.0
File Size Uploaded Provenance Actions
perspective_python-5.7.0.tar.gz 9.3 MB Without provenance Details for perspective_python-5.7.0.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for perspective-python 5.7.0
File Actions
perspective_python-5.7.0-cp311-abi3-win_amd64.whl CPython 3.11 abi3 Windows x86-64 Details for perspective_python-5.7.0-cp311-abi3-win_amd64.whl
perspective_python-5.7.0-cp311-abi3-pyemscripten_2026_0_wasm32.whl CPython 3.11 abi3 PyEmscripten 2026.0+ WebAssembly Details for perspective_python-5.7.0-cp311-abi3-pyemscripten_2026_0_wasm32.whl
perspective_python-5.7.0-cp311-abi3-manylinux_2_28_x86_64.whl CPython 3.11 abi3 Linux glibc 2.28+ x86-64 Details for perspective_python-5.7.0-cp311-abi3-manylinux_2_28_x86_64.whl
perspective_python-5.7.0-cp311-abi3-manylinux_2_28_aarch64.whl CPython 3.11 abi3 Linux glibc 2.28+ ARM64 Details for perspective_python-5.7.0-cp311-abi3-manylinux_2_28_aarch64.whl
perspective_python-5.7.0-cp311-abi3-macosx_14_0_arm64.whl CPython 3.11 abi3 macOS 14.0+ ARM64 Details for perspective_python-5.7.0-cp311-abi3-macosx_14_0_arm64.whl

Total release size: 78.6 MB

Release files / perspective_python-5.7.0.tar.gz

Download URL perspective_python-5.7.0.tar.gz
Size 9.3 MB
Tags Source
SHA-256 checksum
How to use checksums
fc05a36bc363375819228f7275f46acc8b275c7f31332b36184fd7a48d05f267
BLAKE2b-256 checksum
How to use checksums
151aa36bba9e1e26571962b6fcdde6e42840bb712142161c1cbf744fd4715fa9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.11

Release files / perspective_python-5.7.0-cp311-abi3-win_amd64.whl

Download URL perspective_python-5.7.0-cp311-abi3-win_amd64.whl
Size 14.7 MB
Tags CPython 3.11 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
bcbac8034ba4e7315198d89b901ccb4f2b5465e4750104d5ec0e01269c58e23c
BLAKE2b-256 checksum
How to use checksums
25fd78b07af4b3bf69a0696c3c1799e2f06b4edfdd591ca5bfe7418e8ce9c1aa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.11

Release files / perspective_python-5.7.0-cp311-abi3-pyemscripten_2026_0_wasm32.whl

Download URL perspective_python-5.7.0-cp311-abi3-pyemscripten_2026_0_wasm32.whl
Size 8.3 MB
Tags CPython 3.11 PyEmscripten 2026.0+ WebAssembly abi3
SHA-256 checksum
How to use checksums
aec7e8bda404d31c0036194891d846e7b5eb7c376b892980ee4b10548659f233
BLAKE2b-256 checksum
How to use checksums
59a57d0880a8d62bbf2add6eab8fd2f735c8d60ba6919b99cf9439d288e5fb19
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.11

Release files / perspective_python-5.7.0-cp311-abi3-manylinux_2_28_x86_64.whl

Download URL perspective_python-5.7.0-cp311-abi3-manylinux_2_28_x86_64.whl
Size 16.1 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
a886a6ef7429a654030f52f099520ab877be08448285114dffcb63a8a2aa9c89
BLAKE2b-256 checksum
How to use checksums
a7ba8038b366e6d6b3584e716a431fb23f2512f3fbba19f90af3abcf3258ce15
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.11

Release files / perspective_python-5.7.0-cp311-abi3-manylinux_2_28_aarch64.whl

Download URL perspective_python-5.7.0-cp311-abi3-manylinux_2_28_aarch64.whl
Size 15.6 MB
Tags CPython 3.11 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
39cc9d785f744e754865848332eff26aceefafdf4134278bb04a9649170d2ea9
BLAKE2b-256 checksum
How to use checksums
5b5d531c86493f24993189352a14c9552c7e8914c85f56d4fa691efa19952ccb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.11

Release files / perspective_python-5.7.0-cp311-abi3-macosx_14_0_arm64.whl

Download URL perspective_python-5.7.0-cp311-abi3-macosx_14_0_arm64.whl
Size 14.5 MB
Tags CPython 3.11 abi3 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
e69a64eb4b9e810d6cd67649098383f31603aaa6f9e45a3590b72307acffa927
BLAKE2b-256 checksum
How to use checksums
b621e088f83eabb11234c1a89b80b461e40d0502a0c7a051639d1c8d7a1e992c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.11

Security for perspective-python 5.7.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

5.7.0 This release

6 release files No provenance

1.1.1

1.1.0

1.0.8

1.0.7

0.1.11

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page