plotly-interactive-plots
Interactive scientific visualization with Plotly. Two APIs: plotly.express (px) for one-liner DataFrame plots, plotly.graph_objects (go) for trace-level control. 40+ chart types with hover, zoom, pan, animation. Exports HTML or static PNG/SVG/PDF via kaleido. Use for volcano plots with gene hover, dose-response dashboards, expression heatmaps, 3D molecular views. Use seaborn for stats; matplotlib for publication figures.
npx skills add BioTender-max/awesome-bio-agent-skills --skill plotly-interactive-plots --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
The skill trains an AI to generate interactive Plotly visualizations for scientific data, using two APIs: plotly.express (px) for high-level, one-line DataFrame plots and plotly.graph_objects (go) for fine-grained control over traces. It covers more than 40 chart types with features like hover, zoom, pan, and animation, and explains exporting figures as HTML or static images via kaleido. It illustrates use cases such as volcano plots with gene hover, dose-response dashboards, heatmaps, and 3D molecular views, and notes when to use seaborn or matplotlib for specific needs.
How it works
- Uses plotly.express (px) for quick, DataFrame-to-plot workflows (scatter, line, violin, histogram, heatmap via imshow) and automatically generates hover tooltips.
- Uses plotly.graph_objects (go) for full trace-level control, enabling custom classifications (significant vs non-significant), multiple traces, and threshold lines.
- Demonstrates core modules:
- Module 1: px Scatter and Line — Relational Plots, with examples of dose-response scatter and time-course expression plots.
- Module 2: px Statistical Plots — Distributions and Categories (box, violin, histogram, strip).
- Module 3: px Heatmap and Matrix — Gene expression heatmaps and correlation matrices via imshow.
- Module 4: go Graph Objects — Full Trace Control (volcano plot with classifications, bar chart with error bars).
- Module 5: 3D and Specialized Charts — 3D PCA scatter and parallel coordinates.
- Module 6: Subplots and Export — make_subplots usage and exporting figures with write_html and write_image (kaleido).
- Includes concrete code blocks with exact function calls and parameters, showing how to create, customize, and export figures.
When to use it
- When you need hover tooltips with gene names, p-values, or metadata without cluttering a static figure.
- When building multi-panel interactive dashboards for dose-response curves, cohorts, or multi-condition comparisons.
- When sharing figures as self-contained HTML files for browser exploration.
- When creating 3D or higher-dimensional visualizations (3D scatter, surface, parallel coordinates).
- When you require animation frames or specific publication-ready tweaks, and you know to fall back to seaborn or matplotlib for certain statistical or print-quality needs.
What it can touch
- Tools: "plotly.express as px", "plotly.graph_objects as go", "plotly.subplots.make_subplots".
- Code examples manipulate: figures, traces, hover templates, axes, layout, and export methods (write_html, write_image).
Caveats
- Requires external packages for static image export: kaleido (installation shown).
- Uses specific data structures (DataFrames, arrays) and sample datasets; real usage should supply appropriate data.
- The skill does not guarantee any particular visualization outcome or performance across environments.
# Plotly Interactive Plots ## Overview Plotly is a Python library for producing interactive, web-ready figures backed by HTML and JavaScript. It exposes two complementary APIs: `plotly.express` (px) provides a high-level, DataFrame-oriented interface for generating common chart types in one line, while `plotly.graph_objects` (go) offers fine-grained control over every trace, axis, and layout property. Figures are fully interactive by default — supporting hover tooltips, zoom, pan, and click events — and can be embedded in web pages, Jupyter notebooks, or built into web applications using the Dash framework. ## When to Use - You need hover tooltips that display gene names, p-values, or sample metadata without cluttering the static figure. - You are building a multi-panel interactive dashboard for dose-response curves, patient cohorts, or multi-condition comparisons. - You want to share figures as self-contained HTML files that non-programmers can explore in a browser. - You need 3D scatter or surface plots for structural biology, conformational landscapes, or PCA of high-dimensional data. - You are creating heatmaps of gene expression or correlation matrices where users need to zoom
- Overview
- When to Use
- Prerequisites
- Quick Start
- Core API
- Module 1: px Scatter and Line — Relational Plots
- Module 2: px Statistical Plots — Distributions and Categories
- Module 3: px Heatmap and Matrix — Gene Expression and Correlations
- Module 4: go Graph Objects — Full Trace Control
- Module 5: 3D and Specialized Charts
- Module 6: Subplots and Export
- Common Workflows
- Workflow 1: Interactive Volcano Plot with Gene Annotations
- Workflow 2: Multi-Panel Dose-Response Dashboard with makesubplots
pip install plotly kaleido pandas numpy pip install "jupyterlab>=3" ipywidgets
What does the plotly-interactive-plots skill do?
Interactive scientific visualization with Plotly. Two APIs: plotly.express (px) for one-liner DataFrame plots, plotly.graph_objects (go) for trace-level control. 40+ chart types with hover, zoom, pan, animation. Exports HTML or static PNG/SVG/PDF via kaleido. Use for volcano plots with gene hover, dose-response dashboards, expression heatmaps, 3D molecular views. Use seaborn for stats; matplotlib for publication figures.
How do I install it?
Run `npx skills add BioTender-max/awesome-bio-agent-skills --skill plotly-interactive-plots --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From BioTender-max/awesome-bio-agent-skills, a repository with 144 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
