Back to Skills

plotting-fundamentals

verified

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 GitHub

Marketplace

rse-plugins

uw-ssec/rse-plugins

Plugin

holoviz-visualization

data-science

Repository

uw-ssec/rse-plugins
10stars

community-plugins/holoviz-visualization/skills/plotting-fundamentals/SKILL.md

Last Verified

January 22, 2026

Install Skill

Select agents to install to:

Scope:
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-fundamentals

Installation paths:

Claude
.claude/skills/plotting-fundamentals/
Powered by add-skill CLI

Instructions

# 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

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
7422 chars