Let AI analyze your data and create beautiful charts for you.
A reactive data visualization framework built with marimo, Polars, and Plotly. Simply chat with Claude Code to explore your data - no need to write code or know data visualization techniques.
- 🤖 Talk to AI, get charts: Just say "visualize my sales data" and get interactive dashboards
- 📊 No coding required: Claude Code writes all the code for you
- 💡 Get insights automatically: AI explains what your data means
- 🎨 Beautiful visualizations: Professional, interactive charts ready to share
- Marimo: Reactive notebooks that run as scripts or web apps (not Jupyter!)
- Polars: 10-100x faster than pandas for data processing
- Plotly: Interactive charts you can zoom, pan, and explore
- Claude Code: AI that understands data visualization best practices
- Python 3.12 or higher
- uv (required) - Fast Python package manager
- Claude Code (required) - AI assistant for data visualization
# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"git clone https://github.com/DanSnow/data-visualize.git
cd data-visualize
uv syncGet Claude Code from claude.ai/code, then:
# Start marimo with AI integration
mask edit
# or: uv run marimo edit main.py --mcp --no-tokenOpen Claude Code and ask:
Visualize the data in my_sales.csv
Claude will:
- 🔍 Explore your data automatically
- 💬 Ask what you want to see
- 📊 Create interactive charts in your notebook
- 💡 Explain key findings
That's it! No code writing needed.
# Just run marimo notebook
mask run
# or: uv run marimo run main.pyThen edit main.py to load your data - see Manual Usage below.
This project uses mask for common tasks. See maskfile.md for details.
Quick commands:
# Edit with AI support (recommended)
mask edit
# Run as web app
mask runOr use uv directly if you don't have mask installed:
uv run marimo edit main.py --mcp --no-token # With AI
uv run marimo run main.py # Without AIBest for: Non-technical users, quick exploration, complex datasets
- Get your data file (CSV, Excel, Parquet, or JSON)
- Start marimo with AI:
mask edit - Ask Claude Code: "Visualize data in my_file.csv"
- Follow the conversation:
- Claude asks about your interests
- Proposes relevant charts
- Creates visualizations automatically
- Explains insights
Example conversation:
You: Visualize my Q4_sales.csv
Claude: Found 1,247 transactions across 5 categories from Oct-Dec 2024.
What would you like to explore?
- Revenue trends over time?
- Performance by product category?
- Top products analysis?
You: Show trends and top products
Claude: Creating:
1. Daily Revenue Trend (line chart)
2. Top 10 Products (bar chart)
3. Category Breakdown (pie chart)
[Charts appear in your notebook]
Key insights:
- Peak day: Nov 25 ($45K - Black Friday)
- Top product: Wireless Headphones ($67K)
- Electronics: 42% of revenue
Best for: Developers, custom analysis, learning the stack
-
Place data file in project directory
-
Edit main.py to load your data:
df = pl.read_csv("your_data.csv")-
Learn the tools:
- Marimo docs - Reactive notebooks
- Polars guide - Fast DataFrames
- Plotly docs - Interactive charts
-
Reference examples in
.claude/skills/data-viz-insight/references/
- Sales: Revenue trends, top products, regional performance
- Web Analytics: Traffic sources, conversion rates, user behavior
- Finance: Spending patterns, budget tracking, investment analysis
- Operations: Performance metrics, resource utilization, quality control
- Science: Experiment results, distributions, time series
data-visualize/
├── main.py # Your marimo notebook
├── maskfile.md # Task runner commands
├── pyproject.toml # Dependencies (managed by uv)
├── .claude/skills/ # AI assistance configuration
│ └── data-viz-insight/ # Data visualization skill
└── CLAUDE.md # Claude Code instructions
- Marimo Documentation - Reactive Python notebooks
- Polars User Guide - Fast data processing
- Plotly Documentation - Interactive visualizations
- Claude Code - AI coding assistant
- Skill reference:
.claude/skills/data-viz-insight/skill.md - Polars patterns:
.claude/skills/data-viz-insight/references/polars-patterns.md - Plotly examples:
.claude/skills/data-viz-insight/references/plotly-charts.md
Claude Code can't see my notebook
Start marimo with MCP support:
mask edit
# or: uv run marimo edit main.py --mcp --no-tokenImport errors
Install dependencies:
uv syncCharts not showing
Make sure you're in the notebook view (not script mode):
mask editContributions welcome! This project showcases AI-powered data visualization. Feel free to:
- Share example datasets and use cases
- Improve the Claude Code skill
- Add documentation
- Report issues
- marimo - Reactive Python notebooks
- Polars - Fast DataFrames
- Plotly - Interactive visualizations
- Claude Code - AI assistant
- uv - Fast Python package manager
New to data visualization? Start with Claude Code - just describe what you want to see and let AI do the work! 🚀