Install
openclaw skills install data-analysis-for-feishu📊 Powerful ECharts-based data visualization skill optimized for Feishu (Lark) ecosystem. Supports 12+ chart types, 6+ data sources (Excel/CSV/Bitable/Sheet/Markdown), auto chart recommendation, auto analysis reports, generates high-definition PNG charts perfectly displayed in Feishu. No configuration required, works out of the box.
openclaw skills install data-analysis-for-feishu12+ professional chart types cover 99% of data visualization scenarios:
No manual data conversion required, support 6+ common data sources:
Download the skill package:
wget https://github.com/openclaw/skills/releases/download/data-analysis-for-feishu-v1.0.0/data-analysis-for-feishu.skill
Install in OpenClaw:
Go to OpenClaw Admin → Skills → Install → Upload the .skill file
Done! Dependencies are automatically installed on first use.
cd /path/to/openclaw/skills
git clone https://github.com/openclaw/data-analysis-for-feishu.git
cd data-analysis-for-feishu
pip install -r requirements.txt
Generate your first chart in 1 minute:
# Go to skill directory
cd skills/data-analysis-for-feishu
# Generate a demo funnel chart
python scripts/main.py \
--type funnel \
--title "User Conversion Funnel" \
--labels "Visit" "Register" "Add to Cart" "Purchase" "Repurchase" \
--values 10000 4500 2200 1200 500 \
--output demo_funnel.png
You will get a high-definition funnel chart and automatic analysis report.
Let AI do all the work, just provide data:
# Auto analyze Excel data, recommend chart type, generate chart + analysis
python scripts/main.py \
--excel your_data.xlsx \
--output result.png \
--analysis-output analysis.txt
| Chart Type | Best For | Example |
|---|---|---|
| Line Chart | Time series trend analysis | Daily sales trends for the past month |
| Area Chart | Multi-series trend comparison | 2023 vs 2024 monthly sales comparison |
| Bar Chart | Category comparison/ranking | Sales ranking by region |
| Stacked Bar Chart | Multi-dimensional proportion | Product category composition in each region |
| Pie Chart | Proportion/distribution | Revenue composition of each business line |
| Donut Chart | Ring-style proportion | Market share of each competitor |
| Gauge Chart | Progress/KPI completion | Annual sales target completion rate |
| Radar Chart | Multi-dimensional comparison | Product capability assessment |
| Scatter Chart | Correlation analysis | Correlation between advertising spend and sales |
| Funnel Chart | Conversion analysis | User conversion from visit to purchase |
| Waterfall Chart | Financial change analysis | Monthly profit and loss changes |
| Dual Axis Chart | Multi-metric comparison | Monthly sales and growth rate |
| Data Source | Usage |
|---|---|
| Excel (.xlsx/.xls) | --excel data.xlsx --sheet Sheet1 |
| CSV/TSV | --csv data.csv |
| Feishu Bitable | --bitable-records '[{"fields": {...}}]' |
| Feishu Sheet | --sheet-data '[["Header1", "Header2"], ["val1", "val2"]]' |
| Markdown Table | `--markdown-table " |
| Raw Data | --x-axis "Jan" "Feb" --y-axis 100 200 |
python scripts/main.py \
--type area \
--title "2023 vs 2024 Sales Trend" \
--excel sales_comparison.xlsx \
--x-axis-field "Month" \
--y-axis-field "2023 Sales,2024 Sales" \
--series-names "2023,2024" \
--output sales_trend.png
python scripts/main.py \
--type dual_axis \
--title "Monthly Performance" \
--x-axis "Jan" "Feb" "Mar" "Apr" "May" "Jun" \
--y1-axis 120 150 135 180 210 240 \
--y1-name "Sales (k)" \
--y2-axis 0 25 -10 33.3 16.7 14.3 \
--y2-name "Growth Rate (%)" \
--output performance.png
python scripts/main.py \
--type waterfall \
--title "Monthly Profit Breakdown" \
--x-axis "Initial Revenue" "Cost of Goods" "Operating Expenses" "Tax" "Net Profit" \
--y-axis 1000 -300 -200 -150 350 \
--y-name "Amount (k)" \
--output profit_waterfall.png
python scripts/main.py \
--type bar \
--title "Quarterly Revenue" \
--markdown-table "| Quarter | Revenue | Profit |
|----|----|----|
| Q1 | 1200 | 240 |
| Q2 | 1500 | 375 |
| Q3 | 1350 | 297 |
| Q4 | 1800 | 540 |" \
--x-axis-field "Quarter" \
--y-axis-field "Revenue,Profit" \
--output quarterly.png
Edit DEFAULT_COLORS in scripts/generate_echarts_screenshot.py to use your brand colors:
DEFAULT_COLORS = ["#YOUR_COLOR1", "#YOUR_COLOR2", ...]
Change default width/height in scripts/main.py to adjust output size.
When you have Feishu ECharts component permission, use:
python scripts/generate_echarts_card.py --type line --title "Demo" --x-axis "A" "B" --y-axis 1 2 --output card.json
Then send the JSON as Feishu card.
A: First run automatically downloads Chromium browser (about 180MB), please wait patiently. Subsequent runs will be very fast.
A: Yes! You can generate charts as local PNG files for any usage scenario, Feishu integration is optional.
A: Go to Feishu Open Platform → Your App → Permissions → Search for "Message Card - Use ECharts Chart Component" → Apply for permission. It's free and usually approved within 1 working day.
A: Perfect support! All components use UTF-8 encoding, Chinese labels, titles, and analysis reports are displayed normally.
A: Yes! Just add the chart configuration in scripts/generate_echarts_screenshot.py, following the existing pattern.
Contributions are welcome! You can contribute in the following ways:
# Fork and clone the repo
git clone https://github.com/your-username/data-analysis-for-feishu.git
cd data-analysis-for-feishu
# Install dependencies
pip install -r requirements.txt
# Run tests
python scripts/main.py --type funnel --title "Test" --labels "A" "B" "C" --values 100 50 20 --output test.png
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)Distributed under the MIT License. See LICENSE file for more information.