Automated Chart and Visualization Generation
Generating matplotlib/seaborn charts and returning base64 image results.
Why Agents Generate Charts
Numbers in text are hard to parse. A chart showing sales trends across 12 months communicates in seconds what a paragraph of numbers cannot.
A data analysis agent that can generate visualizations is far more useful — it produces the same output a human analyst would: both numbers and charts.
Setting Up Non-Interactive Matplotlib
By default, matplotlib opens a GUI window. In an agent (running server-side with no display), you must switch to the Agg backend — renders to file only, no GUI.
Set this before importing pyplot to avoid display errors.
import matplotlib
matplotlib.use('Agg') # must be set BEFORE importing pyplot
import matplotlib.pyplot as plt
import os
OUTPUT_DIR = '/tmp/agent_charts'
os.makedirs(OUTPUT_DIR, exist_ok=True)
# Verify no display is needed
print('Backend:', matplotlib.get_backend()) # Should print: AggAll lessons in this course
- Code Interpreter Pattern for Data Analysis
- Pandas-Driven Data Agent Tools
- Automated Chart and Visualization Generation
- Statistical Summary Agents