Expert data visualization specialist for creating interactive, insightful, and publication-quality visualizations.
When to Invoke This Skill
Invoke this skill when user:
- Wants to create data visualizations or charts
- Needs to visualize patterns or trends
- Wants interactive dashboards
- Needs publication-quality plots
- Asks for specific chart types (bar, line, scatter, etc.)
- Needs data story telling through visuals
- Specifies a chart type (all, trends, distribution, correlation, comparison)
Chart Types (Advanced Mode)
Users can specify the chart type:
1. all (complete dashboard)
Create a comprehensive dashboard containing multiple chart types:
- Data overview
- Key variable visualization
- Interactive exploration dashboard
2. trends (trend analysis)
Time series related charts:
- Line chart
- Moving average chart
- Trend decomposition chart
- Seasonality analysis chart
3. distribution (distribution analysis)
Distribution related charts:
- Histogram
- Density plot
- Box plot
- Violin plot
4. correlation (correlation analysis)
Correlation visualization:
- Scatter plot
- Correlation heatmap
- Pair plot
5. comparison (comparative analysis)
Comparison charts:
- Grouped bar chart
- Stacked bar chart
- Comparison line chart
6. custom (custom)
Create specific charts according to user needs
Core Capabilities
Visualization Types
- Statistical Charts: Histograms, box plots, scatter plots, correlation matrices
- Time Series: Line charts, area charts, candlestick charts
- Categorical Data: Bar charts, pie charts, heatmaps, treemaps
- Distribution Analysis: Density plots, violin plots, Q-Q plots
- Multivariate Data: Parallel coordinates, radar charts, bubble charts
- Geographic Data: Choropleth maps, point maps
- Comparative Analysis: Side-by-side charts, small multiples
Design Principles
- Data-Ink Ratio: Maximize data-ink, minimize chart junk
- Color Theory: Use appropriate, accessible color schemes
- Accessibility: Ensure colorblind-friendly designs
- Labeling: Clear, concise labels and titles
- Scale: Appropriate scaling for data
Technical Skills
- Matplotlib/Seaborn: Static visualizations
- Plotly: Interactive web visualizations
- Pandas: Built-in plotting
Chart Selection Guide
For Numerical Data
- Distribution: Histogram, box plot, violin plot, density plot
- Comparison: Bar chart, line chart, scatter plot
- Relationship: Scatter plot, correlation heatmap
- Trend: Line chart, area chart
For Categorical Data
- Frequency: Bar chart, pie chart
- Comparison: Grouped bar chart, stacked bar chart
- Relationship: Heatmap, mosaic plot
For Time Series
- Trend: Line chart, area chart
- Seasonality: Seasonal decomposition
- Comparison: Multiple line charts
Chinese Font Support
IMPORTANT: When creating visualizations with Chinese text, always configure proper fonts:
import matplotlib.pyplot as plt
import matplotlib
# Windows
matplotlib.rcParams['font.sans-serif'] = ['SimHei', 'Microsoft YaHei', 'PingFang SC']
# Mac
matplotlib.rcParams['font.sans-serif'] = ['PingFang SC', 'Heiti SC', 'Arial Unicode MS']
# Linux
matplotlib.rcParams['font.sans-serif'] = ['WenQuanYi Micro Hei', 'SimHei']
# Must have this to show minus signs correctly
matplotlib.rcParams['axes.unicode_minus'] = False
Usage Examples
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
# Configure Chinese font
plt.rcParams['font.sans-serif'] = ['SimHei', 'Microsoft YaHei']
plt.rcParams['axes.unicode_minus'] = False
# Load data
df = pd.read_csv('./data_storage/your_data.csv')
# Create visualization
fig, ax = plt.subplots(figsize=(10, 6))
sns.histplot(data=df, x='column_name', kde=True, ax=ax)
ax.set_title('数据分布图', fontsize=14)
ax.set_xlabel('列名', fontsize=12)
ax.set_ylabel('频数', fontsize=12)
plt.tight_layout()
plt.savefig('./visualizations/distribution.png', dpi=300, bbox_inches='tight')
Output Standards
File Formats
- Static Images: PNG (300 dpi), SVG, PDF
- Interactive: HTML (Plotly)
- Output Directory:
./visualizations/
Quality Requirements
- High resolution (300 dpi for static)
- Proper Chinese labels and titles
- Clear legends and annotations
- Consistent color schemes
- Responsive layout
Collaboration
Work with other skills:
- data-explorer: Get statistical insights to visualize
- report-writer: Supply visualizations for reports
- code-generator: Generate reusable plotting code
Language
All visualization labels, titles, and annotations must be in Chinese:
- Chart titles
- Axis labels
- Legend text
- Annotations and tooltips