Communitygithub.com

maverickmaltin/graph

將您的數據變成一支動畫圖表影片,在螢幕上自動繪製(1080x1920 MP4)。使用 /graph 搭配數字、表格、CSV 或任何要求來製作圖表動畫。

graph 是什麼?

此技能能將使用者提供的任何形式數字(例如「Mar 200K, Apr 650K, Nov 1.5M」、貼上的表格、CSV 檔案、螢幕截圖或自然語言句子)轉換為一支約 5 秒的無聲 MP4 動畫圖表影片。它支援條形圖和折線圖,可自動選擇最適合的圖表類型(資料點少於 10 個用條形圖,較長序列或數值變化幅度小時用折線圖),並提供多種主題(夜間、明亮、日落、薄荷)、自訂標題、副標題、單位前綴/後綴、小數位數、數值壓縮格式及重點數據高亮等功能。使用者可透過簡單的 JSON 規格檔案控制所有參數,並在渲染前檢查最後一幀以確保準確性。此工具支援 Claude Code 環境,若瀏覽器無法使用,也能輸出 HTML 頁面作為替代方案。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/maverickmaltin/claude-animate-skills/tree/HEAD/skills/graph

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

/graph:您的數字變成動畫圖表

使用者以任何形式提供數字:Mar 200K, Apr 650K, Nov 1.5M、貼上的表格、CSV 檔案、螢幕截圖或一句話。您將其轉換為一個小型規格檔,檢查一幀畫面,渲染影片,最後交出一個無聲的 MP4(約 5 秒鐘)。

${CLAUDE_SKILL_DIR} 以下是此技能的資料夾(即此 SKILL.md 所在的資料夾)。如果您的環境沒有填寫它,請使用該資料夾的路徑。將所有內容儲存在使用者目前的資料夾或他們指定的資料夾中。

0. 設定檢查

python3 "${CLAUDE_SKILL_DIR}/scripts/render.py" --check

這需要幾秒鐘;如果您不確定這台電腦是否已設定好,請執行它。"ready": true 表示可以繼續。否則,請執行它在 "fix" 下列出的命令,並告知使用者這是一次性安裝:python3 -m pip install playwright(瀏覽器驅動程式)、python3 -m playwright install chromium(僅在未安裝 Google Chrome 或 Edge 時需要,約 150 MB)以及 python3 -m pip install imageio-ffmpeg(僅在缺少 ffmpeg 時需要)。如果 pip 拒絕並顯示「externally managed environment」,請建立一個私有環境並使用其 Python 執行所有命令:python3 -m venv ~/.animate-skills && ~/.animate-skills/bin/pip install playwright imageio-ffmpeg,然後在需要時執行 ~/.animate-skills/bin/python -m playwright install chromium。在 Windows 上,請使用 py 代替 python3。

如果此處無法使用瀏覽器(例如 Claude 應用程式的沙盒環境)?請參閱此檔案末尾。

1. 撰寫規格檔

儲存 graph-<主題>.json:

{
  "title": "我的 Instagram 追蹤者",
  "subtitle": "2026",
  "data": [["Mar", 200000], ["Apr", 650000], ["Nov", 1500000]],
  "source": "Instagram",
  "theme": "night"
}

規則:

  • 使用使用者提供的確切數字。絕不虛構、平滑化、四捨五入或填補數值。如果某件事真的很模糊(例如哪一欄、什麼單位),問一個簡短的問題;否則直接進行。
  • 寫出完整數字:650K → 650000,1.5M → 1500000,12% → 12 並加上 "suffix": "%"。
  • 保持標籤簡短(最多約 8 個字元效果最佳):Mar、Q1、2024、Mon。
  • 標題說明數字代表什麼,儘可能使用使用者的措辭(最多約 30 個字元;| 強制換行)。僅在使用者有提供或從請求中明確可知時(例如「我的 Instagram 追蹤者」→ 來源 Instagram)才加入 subtitle 和 source;不要憑空捏造。
欄位功能說明
title、subtitle標題及其下方的小字(句點、單位)。
data[["標籤", 數值], ...] 或 [{"label": "...", "value": n}, ...],按順序排列。
type留空則自動選擇:最多 10 個數值使用條形圖;較長的序列,以及相對於數值大小變化較小的數值(例如體重 210 → 178、價格、溫度),則使用折線圖,折線圖會聚焦於範圍內。設定為 "bar" 或 "line" 可強制指定。
prefix、suffix單位:"$"、"€"、"%"、" kg"。
decimals強制指定小數位數。預設為每個數值保留其自身小數位數。
compact預設將 10,000 以上顯示為 12K / 1.5M / 2B。false 則顯示完整數字。
callout留空則自動從第一個數值到最後一個數值產生增長標籤(↑ 7.5x;從 10x 起使用整數,↑ 77x;↑ 32%;↓ 18%)。也可以使用您自己的簡短文字(例如 "恢復獲利"),或設為 null 表示不顯示。
good當數值越低越好時設定為 "down"(例如體重減輕、債務償還、成本、比賽時間):下降會得到綠色標籤而非紅色。
highlight指定哪個長條為金色:"last"(預設)、"max"、索引值或 "none"。
themenight(深藍色海軍風、珊瑚色長條;預設)、light、sunset、mint。
source圖表下方的小字「來源:...」備註。
size"1080x1920"(直式,預設)、"1080x1080"、"1920x1080"。
duration、fps秒數(預設約 5)和每秒幀數(預設 30;60 更流暢但更慢)。

範例:examples/instagram-followers.json(條形圖)、examples/website-visitors-line.json(折線圖)。

2. 檢查最後一幀

python3 "${CLAUDE_SKILL_DIR}/scripts/render.py" graph-<主題>.json --still end --out graph-<主題>-check.png

查看圖片(需 2-3 秒產生):確保標籤可讀、無重疊、數字與使用者提供的完全相同。若不是,修正規格檔後再次檢查。

3. 渲染影片

python3 "${CLAUDE_SKILL_DIR}/scripts/render.py" graph-<主題>.json --out graph-<主題>.mp4

約需 10-20 秒。刪除檢查圖片。

4. 交付成果

將 MP4 檔案的路徑提供給使用者(如果您的環境可以顯示檔案,請顯示出來)。它沒有聲音,可以隨時配上音樂或旁白。提供一個快速的變化選項(例如其他主題、正方形尺寸、改用折線圖代替條形圖)。

此處沒有瀏覽器?(例如 Claude 應用程式的沙盒環境)

如果設定檢查無法啟動瀏覽器,請改為將動畫寫成頁面:python3 "${CLAUDE_SKILL_DIR}/scripts/render.py" graph-<主題>.json --html graph-<主題>.html。該頁面可在任何瀏覽器中播放圖表(如果可以,請將其顯示為 artifact)。告知使用者 MP4 檔案需要一台裝有 Claude Code 的電腦,或對該頁面進行螢幕錄製。

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

相關技能