Master quick plotting and interactive visualization with hvPlot. Use this skill when creating basic plots (line, scatter, bar, histogram, box), visualizing pandas DataFrames with minimal code, adding interactivity and hover tools, composing multiple plots in layouts, or generating publication-quality visualizations rapidly.
View on GitHubuw-ssec/rse-plugins
holoviz-visualization
community-plugins/holoviz-visualization/skills/plotting-fundamentals/SKILL.md
January 22, 2026
Select agents to install to:
npx add-skill https://github.com/uw-ssec/rse-plugins/blob/main/community-plugins/holoviz-visualization/skills/plotting-fundamentals/SKILL.md -a claude-code --skill plotting-fundamentalsInstallation paths:
.claude/skills/plotting-fundamentals/# Plotting Fundamentals Skill
## Overview
Master quick plotting and interactive visualization with hvPlot and HoloViews basics. This skill covers essential techniques for creating publication-quality plots with minimal code.
## Dependencies
- hvplot >= 0.9.0
- holoviews >= 1.18.0
- pandas >= 1.0.0
- numpy >= 1.15.0
- bokeh >= 3.0.0
## Core Capabilities
### 1. hvPlot Quick Plotting
hvPlot provides an intuitive, pandas-like API for rapid visualization:
```python
import hvplot.pandas
import pandas as pd
import numpy as np
# Create sample data
df = pd.DataFrame({
'date': pd.date_range('2024-01-01', periods=100),
'sales': np.cumsum(np.random.randn(100)) + 100,
'region': np.random.choice(['North', 'South', 'East', 'West'], 100)
})
# Simple line plot
df.hvplot.line(x='date', y='sales', title='Sales Over Time')
# Grouped plot
df.hvplot.line(x='date', y='sales', by='region', subplots=True)
# Scatter with size and color
df.hvplot.scatter(x='sales', y='date', c='region', size=50)
```
### 2. Common Plot Types
```python
# Bar plot
df.hvplot.bar(x='region', y='sales', rot=45)
# Histogram
df['sales'].hvplot.hist(bins=30, title='Sales Distribution')
# Box plot
df.hvplot.box(y='sales', by='region')
# Area plot
df.hvplot.area(x='date', y='sales')
# KDE (Kernel Density Estimation)
df['sales'].hvplot.kde()
# Hexbin (for large datasets)
df.hvplot.hexbin(x='sales', y='date', gridsize=20)
```
### 3. Customization Options
```python
# Apply consistent styling
plot = df.hvplot.line(
x='date',
y='sales',
title='Sales Trend',
xlabel='Date',
ylabel='Sales ($)',
color='#2E86DE',
line_width=2,
height=400,
width=700,
responsive=True,
legend='top_left'
)
# Color mapping
df.hvplot.scatter(
x='sales',
y='date',
c='sales',
cmap='viridis',
s=100
)
# Multiple series
df.hvplot.line(
x='date',
y=['sales'],
title='Performance Metrics'
)
```
### 4. Interactive Features
```python
# Hover informati