DS-201d · Module 1
The AI Visualization Landscape in 2026
3 min read
Two years ago, getting a chart from an AI model required uploading a CSV, waiting for code generation, debugging the Python output, and hoping the matplotlib styling was not offensive. That workflow still exists — but only in one of the two major tools. In 2026, Claude and ChatGPT take fundamentally different approaches to data visualization, and understanding this difference is the key to using each one effectively.
Claude generates visualizations as Artifacts — interactive, rendered dashboards that appear immediately in your browser. Attach a CSV, describe what you want, and Claude produces a fully styled, multi-panel dashboard in seconds. No code to copy. No IDE to open. No Python environment to configure. The visualization appears in a panel alongside the conversation, ready to screenshot or iterate on. Claude also provides deep analytical reasoning about the data before and alongside the visualization, explaining what patterns it found and why it chose specific chart types.
ChatGPT takes a different path. When you ask for visualizations, ChatGPT generates Python code — typically matplotlib or seaborn scripts — that you need to copy, save as a .py file, and run in an external IDE or terminal. The code is often well-structured and well-commented, but the workflow has friction: you need Python installed, you need the right libraries (pandas, matplotlib, numpy), and you need to manage file paths for your CSV data. The upside is full control — you own the code, you can modify it line by line, and you can integrate it into existing data pipelines.
Do This
- Use Claude when you need an immediate visual — attach data, get a rendered dashboard in seconds
- Use ChatGPT when you need reusable code — scripts you can modify, version control, and run in production
- Use both in sequence: Claude for fast exploration and chart selection, ChatGPT for production-grade scripts you own
Avoid This
- Assume either tool will catch data quality issues automatically — you must verify
- Accept the first chart without questioning whether it tells the right story
- Skip the analysis step and jump straight to "make me a chart" — the wrong chart rendered beautifully is worse than no chart
To see the difference in practice, try these three prompts — one per dataset — in both Claude and ChatGPT. Download all three CSV files from the Course Datasets panel below and attach them directly to your conversation. In ChatGPT, use the paperclip icon to upload the file. In Claude, drag the file into the chat or use the attachment button. Attaching the file is faster and more reliable than pasting — the AI reads the structure and data types automatically.
I've attached quarterly-revenue.csv — revenue data for a SaaS company with three products across three regions. Analyze the data first, then create visualizations.
**Analysis first:**
1. Which product has the highest total revenue? Which is growing fastest in % terms?
2. Are there regional growth differences worth highlighting?
3. Any anomalies (dips, spikes, seasonal patterns)?
**Then create three charts:**
Chart 1: Grouped bar chart — revenue by product per quarter (Q1-Q4 on x-axis, three bars per quarter). Show which product dominates and how they trend.
Chart 2: Small multiples — one line chart per product, with three lines each (one per region). This reveals whether growth is global or regional.
Chart 3: Stacked bar showing revenue composition by region for each quarter (all products combined). Shows how the geographic mix is shifting.
**Style:** Dark background (#111827), cyan (#06B6D4) for primary data, amber (#F59E0B) for secondary, gray (#6B7280) for tertiary. Clean sans-serif font, 14pt titles, data labels on Q4 bars only. Tight layout, presentation-ready.
I've attached support-tickets.csv — 30 support tickets with category, priority, resolution time, satisfaction scores, agent assignment, and escalation status. Analyze the data first, then create visualizations.
**Analysis first:**
1. Is there a relationship between ticket priority and resolution time?
2. Do escalated tickets have lower satisfaction scores?
3. Which agent handles the most escalations, and how does their resolution time compare?
4. What does the distribution of resolution times look like — normal, skewed, bimodal?
**Then create three charts:**
Chart 1: Box plot of resolution hours grouped by priority level (ordered: Critical, High, Medium, Low). Show the distribution, not just the averages.
Chart 2: Scatter plot with resolution hours on x-axis and satisfaction on y-axis. Color points by escalation status (cyan for No, red/amber for Yes). Add trend lines for each group.
Chart 3: Grouped bar chart of average resolution time by agent, split by escalated vs non-escalated. Add error bars for standard deviation.
**Style:** Dark background (#111827), cyan (#06B6D4) primary, amber (#F59E0B) for escalated/warning data, gray (#6B7280) for secondary. Clean sans-serif font. Presentation-ready.
I've attached marketing-funnel.csv — three months of marketing data across five channels with full-funnel metrics (Impressions through Closed Won) plus spend. Analyze the data first, then create visualizations.
**Analysis first:**
1. What is the conversion rate from each stage to the next, by channel?
2. Where is the biggest funnel drop-off for each channel?
3. Which channel has the best cost per closed-won deal?
4. Is there a channel where high top-of-funnel volume masks poor conversion?
**Then create three charts:**
Chart 1: Conversion rate heatmap — channels as rows, stage-to-stage conversion rates as columns (Click Rate, Lead Rate, MQL Rate, SQL Rate, Opp Rate, Close Rate). Color from red (worst) to green (best). Include percentage values in each cell.
Chart 2: Scatter plot with cost per acquisition on x-axis and total closed-won deals on y-axis. Size each point by total spend. Label each point with the channel name. Add quadrant lines at the median of each axis.
Chart 3: Stacked horizontal bar chart showing where each channel loses volume — each bar is a channel, segments represent the drop-off count at each funnel stage. The visual should make it obvious where each funnel leaks.
**Style:** Dark background (#111827), cyan (#06B6D4) primary, amber (#F59E0B) for highlights, emerald for positive metrics, red for negative. Clean sans-serif font. Presentation-ready.