streamlit-plotly-events
Plotly chart component for Streamlit that also allows for events to bubble back up to Streamlit.
Decision gist · record as of 2026-08-14
Yes, with conditions. The package solves a real gap—native Streamlit lacks Plotly event capture—and has low install friction. However, maintenance is dormant (last release April 2021); compatibility with current streamlit and plotly versions is unverified, and the license is unclear. Install it for prototyping or internal tools, but evaluate compatibility and licensing before production use.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.6 or later and both streamlit and plotly to be installed.
- Low friction: pure Python wheel with only streamlit and plotly as runtime dependencies.
- Maintenance is dormant—last release was 2021-04-26, though the repo remains unarchived and saw a commit as recently as 2024-07-16.
License · maintenance · safety
(unclear) — License treatment is unclear—no SPDX identifier or raw license text is recorded. Before relying on this package in a commercial or copyleft context, verify the actual license from the repository.
last release 2021-04-26 (1936 days) · last repo commit 2024-07-16 · 233 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 112,485 downloads/mo, #12,369 on PyPI
Alternatives
Verify before relying
pip install streamlit-plotly-events
import plotly.express as px
from streamlit_plotly_events import plotly_events
fig = px.line(x=[1], y=[1])
selected_points = plotly_events(fig)- Compatibility with current versions of streamlit and plotly (last release 2021-04-26, no recent updates).
- Whether hover_event is truly resource-intensive in practice and under what conditions.
- Performance impact when handling large numbers of overlapping points or high-frequency events.
What it is and what it does
Streamlit Plotly Events is a Streamlit custom component that bridges Plotly charts with Streamlit's event system. It wraps Plotly figures and exposes click, select (lasso), and hover events, returning a list of dictionaries containing point details (x, y, curve index, point index) that your Streamlit app can react to. This enables interactive workflows where users click or hover on chart elements and your app responds in real time.
The package is lightweight—it depends only on streamlit and plotly—and integrates seamlessly with Streamlit's component API. You pass a Plotly figure to the `plotly_events()` function, optionally configure which events to listen for via kwargs, and receive back the selected point data. The documentation notes that hover events are resource-intensive, suggesting they should be used selectively.
Use it for
- Build dashboards where clicking a data point filters or highlights related data elsewhere on the page.
- Create exploratory data tools where hovering reveals detailed tooltips or triggers calculations.
- Implement lasso-select workflows to let users select multiple points and export or analyze them.
- Add drill-down interactivity to charts, where clicking a point opens a detail view or nested analysis.
- Prototype interactive scientific or financial visualizations that respond to user selections in real time.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, with conditions.
The package solves a real gap—native Streamlit lacks Plotly event capture—and has low install friction. However, maintenance is dormant (last release April 2021); compatibility with current streamlit and plotly versions is unverified, and the license is unclear. Install it for prototyping or internal tools, but evaluate compatibility and licensing before production use.
Install
streamlit-plotly-events on PyPI
Before you install
Low friction: pure Python wheel with only streamlit and plotly as runtime dependencies. Maintenance is dormant—last release was 2021-04-26, though the repo remains unarchived and saw a commit as recently as 2024-07-16. No recent activity suggests compatibility issues may accumulate.
Requires Python 3.6 or later and both streamlit and plotly to be installed.
License in practice
License treatment is unclear—no SPDX identifier or raw license text is recorded. Before relying on this package in a commercial or copyleft context, verify the actual license from the repository.
Quickstart
pip install streamlit-plotly-events
import plotly.express as px
from streamlit_plotly_events import plotly_events
fig = px.line(x=[1], y=[1])
selected_points = plotly_events(fig)
Verify before relying
- Compatibility with current versions of streamlit and plotly (last release 2021-04-26, no recent updates).
- Whether hover_event is truly resource-intensive in practice and under what conditions.
- Performance impact when handling large numbers of overlapping points or high-frequency events.
Package facts
| License | Not declared unclear |
| Python support | Supports the current Python release >=3.6 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagesstreamlitplotly |
| Maintenance | Dormant 1,936 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 112,485 / month, #12,369 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
Evidence: streamlit_plotly_events-0.0.6-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “plotly chart events in streamlit”
- streamlit-plotly-eventsCaptures click, select, and hover events from Plotly charts rendered…
- chart-studioProvides utilities to interface with Plotly's Chart Studio, enabling…
- altexAltex wraps Altair to provide a simple, express-style API for…
Give your agent the search over MCP, or paste the wish link into any chat.
More Graphics packages
Pillow adds image processing capabilities to Python, providing file format support, efficient pixel data handling, and image manipulation operations.
Install it if you need to work with images in Python—it is the de facto standard for this task.
fonttools manipulates font files in multiple formats (TrueType, OpenType, AFM, Type 1, Mac-specific) and includes TTX, a tool to convert fonts to and from XML text format.
Install it if you need to read, write, or manipulate fonts programmatically or via the TTX command-line tool.
Enables matplotlib figures to display inline directly within Jupyter notebooks and IPython environments instead of in separate windows.
PyMuPDF extracts, renders, converts, and manipulates PDF and other document formats (XPS, EPUB, images, Office files via Pro) with high performance, providing text, tables, images, and metadata with precise layout information.
The AGPL license requires careful review if you are building proprietary software—commercial licensing is available from Artifex.
pypdfium2 is a Python binding to PDFium that enables PDF rendering, inspection, manipulation, and creation through a ctypes interface to Google's PDFium library.
Install it if you need PDF rendering, inspection, or manipulation in Python; the medium install friction is offset by comprehensive platform support.
Altair is a declarative Python library for creating interactive statistical visualizations by writing simple, readable code that compiles to Vega-Lite specifications.
See also altex · streamlit-image-coordinates · streamlit-echarts · streamlit-feedback · streamlit-folium · plotly · streamlit-javascript · chart-studio · streamlit-sortables · streamlit-camera-input-live