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.6.1

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.6.1
File Size Uploaded Provenance
perspective_python-5.6.1.tar.gz 9.2 MB Without provenance Details

Built distributions (wheels)

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

Total release size: 77.4 MB

Release files / perspective_python-5.6.1.tar.gz

Download URL perspective_python-5.6.1.tar.gz
Size 9.2 MB
Tags Source
SHA-256 checksum
How to use checksums
955d1df92c1ac81c2b9f2dec498f9760240b787fa941e313d1816cd202474501
BLAKE2b-256 checksum
How to use checksums
8839bf2be9c950371f5db26b20b552df435567fb9dfe43fec8a45cc4752ac71a
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.6.1-cp311-abi3-win_amd64.whl

Download URL perspective_python-5.6.1-cp311-abi3-win_amd64.whl
Size 14.5 MB
Tags CPython 3.11 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
594ee37b836e8ad742a4ccf2f5e2a188c97e2d1b125c08494f45b456c33cc49b
BLAKE2b-256 checksum
How to use checksums
18145861c9464f7a3acfede0e53e289e62d824534e68ade438c8ebd302e94b55
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.6.1-cp311-abi3-pyemscripten_2026_0_wasm32.whl

Download URL perspective_python-5.6.1-cp311-abi3-pyemscripten_2026_0_wasm32.whl
Size 8.2 MB
Tags CPython 3.11 PyEmscripten 2026.0+ WebAssembly abi3
SHA-256 checksum
How to use checksums
a1cdd7e8133fd99706c5b6d29cc624c20db2adb711c4e87e9a65ccd43f7e1f3a
BLAKE2b-256 checksum
How to use checksums
2e85ed7c21e8a30ce621ad74267aaeca8d367658ba10f019236feb90aef876bf
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.6.1-cp311-abi3-manylinux_2_28_x86_64.whl

Download URL perspective_python-5.6.1-cp311-abi3-manylinux_2_28_x86_64.whl
Size 15.9 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
f899965c5fd8f2335c1b687945f15fca5cbc8264ee4b9f06a766a8940eccd800
BLAKE2b-256 checksum
How to use checksums
0eae0c76e6e6020ebe94668ed373281f190632a7facce544a910cdd61d83696d
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.6.1-cp311-abi3-manylinux_2_28_aarch64.whl

Download URL perspective_python-5.6.1-cp311-abi3-manylinux_2_28_aarch64.whl
Size 15.4 MB
Tags CPython 3.11 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
a9aeef25f74f57ffcea6cb796c4f1ccb0bfbb50534366e9785c16b338af95706
BLAKE2b-256 checksum
How to use checksums
1172b3a1aaa450382581dc7d36651974babf2288533d313fc741b5ebac665129
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.6.1-cp311-abi3-macosx_14_0_arm64.whl

Download URL perspective_python-5.6.1-cp311-abi3-macosx_14_0_arm64.whl
Size 14.3 MB
Tags CPython 3.11 abi3 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
0e1fdf22565ccb130cb506f35ed7f0b65589ec9334e5501236099f02645c0825
BLAKE2b-256 checksum
How to use checksums
833720f538fcf7a2b5cebbf5c2f358b3be629647889bdbbd00257dd134de9a8e
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.6.1

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.6.1 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