I

data-visualization

作者 inferen-sh

實用的資料視覺化指南,著重圖表選擇、色彩運用與註解等最佳實務。了解什麼時候該用長條圖、折線圖、散點圖或熱圖,如何清楚標示座標軸,並為儀表板、報表與簡報用資料說出簡潔有力的故事。

Stars0
收藏0
評論0
加入時間2026年3月27日
分類数据可视化
安裝指令
npx skills add https://github.com/inferen-sh/skills --skill data-visualization
總覽

概觀

技能能做到什麼

data-visualization 技能是一套專注於將原始資料轉成清楚、有說服力圖表的實戰指南,能協助你:

  • 選擇正確的圖表類型(長條圖、折線圖、散點圖、熱圖等)
  • 套用基本色彩原則,讓圖表易讀又兼顧無障礙
  • 設定座標軸、刻度與標籤,讓數字一目了然
  • 標註關鍵重點,讓受眾能快速抓到故事主軸

這套技能以可重現的實務流程為核心,透過 Python 與 matplotlib 搭配 inference.sh CLI 操作。範例示範如何從表格型資料(如 CSV 或試算表)一路產出可直接放進儀表板、報表或簡報投影片的正式圖像檔。

適用對象

如果你符合以下情境,可以善用 data-visualization 技能:

  • 資料分析師,需要給利害關係人穩定、可被辯護的圖表
  • 資料科學家,想快速產出基於 matplotlib 的圖表用於實驗或報告
  • 產品或營運負責人,經常把 Google Sheets 或 CSV 匯出變成圖表
  • 任何需要準備簡報投影片、內部儀表板或輕量 BI 視覺化的人

此技能聚焦在分析型溝通,而不是客製 UI 元件或複雜 Web 儀表板。如果你主要是想要精緻的前端視覺化函式庫(例如大量客製的 D3.js 圖表),這套技能比較偏向「設計與流程參考」,而非完整實作方案。

能解決的問題

本技能用來處理常見的資料視覺化痛點:

  • 圖表選擇不清楚 – 協助你判斷何時用長條圖、折線圖、散點圖或熱圖,以及什麼時候應該避免使用圓餅圖。
  • 座標軸與刻度讓人困惑 – 提供座標軸範圍、刻度間距的基本規則,避免產生誤導性的視覺效果。
  • 色彩使用不當 – 說明如何節制地使用色彩來強調重點,同時維持對比度與無障礙。
  • 標籤難以閱讀 – 示範如何命名圖表標題、標示座標軸與註解數據點,讓主要訊息一看就懂。
  • 工作流程零散 – 示範如何把視覺化整合到 CLI/Python 工作流程中,在資料更新時自動重新產生圖表。

若你經常需要把試算表或 CSV 資料轉成乾淨、可重複使用的圖像,放進簡報或報表,data-visualization 能提供一套可重複使用的模式。

使用方式

1. 安裝 data-visualization 技能

要透過 skills CLI 將 data-visualization 技能加入你的環境,執行:

npx skills add https://github.com/inferen-sh/skills --skill data-visualization

這會從 inferen-sh/skills 儲存庫中的 guides/design/data-visualization 拉下技能定義與指南內容。

安裝完成後,你可以在支援 skills 的工具內直接瀏覽檔案,或到 GitHub 查看:

  • 技能入口:SKILL.md
  • 指南路徑:guides/design/data-visualization/

2. 設定 inference.sh CLI(執行範例程式碼所需)

本技能的快速上手流程會使用 inference.sh CLI(infsh)來執行 Python 程式,並透過 matplotlib 產生圖表。

依照技能中引用的 CLI 安裝說明進行設定:

  1. 開啟 CLI 安裝說明:
    • https://raw.githubusercontent.com/inference-sh/skills/refs/heads/main/cli-install.md
  2. 依你的平台安裝 infsh CLI。
  3. 進行登入驗證:
infsh login

完成 infsh 安裝與登入後,你就可以執行 data-visualization 技能所使用的範例應用程式。

3. 使用 Python 與 matplotlib 產生圖表

核心流程是把一小段 Python 程式碼送到執行 matplotlib 的 infsh app,產生並儲存圖像。本技能提供一個現成範例,用來建立每月營收的長條圖:

infsh app run infsh/python-executor --input '{
  "code": "import matplotlib.pyplot as plt\nimport matplotlib\nmatplotlib.use(\"Agg\")\n\nmonths = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\"]\nrevenue = [42, 48, 55, 61, 72, 89]\n\nfig, ax = plt.subplots(figsize=(10, 6))\nax.bar(months, revenue, color=\"#3b82f6\", width=0.6)\nax.set_ylabel(\"Revenue ($K)\")\nax.set_title(\"Monthly Revenue Growth\", fontweight=\"bold\")\nfor i, v in enumerate(revenue):\n    ax.text(i, v + 1, f\"${v}K\", ha=\"center\", fontweight=\"bold\")\nplt.tight_layout()\nplt.savefig(\"revenue.png\", dpi=150)\nprint(\"Saved\")"
}'

這段程式展示了本技能推崇的幾項最佳實務:

  • 長條圖 呈現離散的月度數值
  • 對所有長條使用一致且對比明顯的色彩
  • 清楚標示座標軸(Revenue ($K))與具描述性的粗體標題
  • 在每根長條上方加上簡單的註解,讓數值一眼就能看懂

指令執行後,你會得到一個 revenue.png 檔案,可以:

  • 插入簡報投影片
  • 附加在電子郵件報表中
  • 發佈在內部儀表板裡

你可以依照同樣模式,改寫 Python 程式碼來產生其他圖表類型(折線圖、散點圖、熱圖),同時仍遵循圖表選擇、標示與色彩運用的原則。

4. 將圖表選擇指南套用到自己的資料

data-visualization 技能內容中,你會看到一份 Chart Selection Guide,其中包含一節 Which Chart for Which Data?。這份指南會協助你把手上的資料與想回答的問題,對應到合適的圖表類型,例如:

  • 比較不同類別隨時間的變化 → 使用折線圖或群組長條圖
  • 比較同一時間點的類別差異 → 使用長條圖
  • 觀察兩個數值變數間的關係 → 使用散點圖
  • 呈現兩個維度(例如時間與類別)上的強度變化 → 使用熱圖

你可以用這份指南來決定如何視覺化:

  • 從分析工具匯出的 CSV(例如每日 session 數、各通路營收)
  • 試算表中的表格資料,如 A/B 測試結果或問卷回覆
  • 透過 Python 或 SQL 整理好的資料,當你需要為報告產出最終圖表時

把圖表選擇指南與前面提到的 Python/matplotlib 流程結合起來,就能以程式方式產生圖像,而不是在 GUI 裡一張張手動做圖。

5. 串接到你的報表與簡報流程

當你安裝好技能並建立一條可運作的 infsh pipeline 之後,你可以:

  • 自動化週期性圖表:把 infsh app run 呼叫包進腳本中,自動抓最新 CSV 資料、更新 Python 程式(或資料變數),並輸出新的 PNG 檔。
  • 標準化視覺風格:在多個圖表中重複使用相同的色彩、字型與版面慣例,讓儀表板與簡報風格一致。
  • 匯出給簡報工具:將產生的 PNG 放進 PowerPoint、Keynote、Google Slides 或 Web 儀表板。

當你想要一條「從試算表或 CSV 到可發佈圖表」的可重複 CLI/Python 流程時,data-visualization 特別好用。

6. 建議優先閱讀的檔案

安裝完成後,先閱讀以下關鍵檔案,可以更有效發揮這套技能:

  • SKILL.md – 技能的高階說明、快速上手指令與背景脈絡。
  • guides/design/data-visualization/ – 關於圖表類型、座標軸、色彩選擇與註解的詳細規則。

設計新圖表或重構既有儀表板時,可以把它們當成檢查清單使用。

什麼情況適合(或不適合)使用這個技能

適合使用 data-visualization 技能的情境:

  • 你的資料主要是 表格型資料(CSV、試算表、SQL 匯出)。
  • 你想 標準化報表與簡報中的圖表品質
  • 你對 CLI 指令與基本 Python/matplotlib 程式碼感到熟悉。

以下情況則較不適合:

  • 你需要的是 JavaScript 視覺化函式庫,打造高度互動的 Web 圖表(例如大型的 D3.js 專案)。
  • 你在建置的是完整的 BI 平台,需要的是全功能儀表板軟體,而不是圖表設計指引。
  • 你沒有使用 inference.sh,或不想採用 CLI 駕動的工作流程;這種情況下,你仍然可以使用其中的概念性指南(圖表選擇、色彩、註解),但需要自行套用到你慣用的工具。

常見問題(FAQ)

我要如何安裝 data-visualization 技能?

使用 skills CLI 安裝:

npx skills add https://github.com/inferen-sh/skills --skill data-visualization

這會把 inferen-sh/skills 儲存庫中的 data-visualization 指南加到你的環境,方便你查閱圖表選擇與視覺化規則。

一定要用 inference.sh CLI 才能使用這個技能嗎?

如果你想照原樣執行技能中提供的 Python/matplotlib 範例,就需要 infsh CLI。技能的快速上手章節會明確說明這個需求,並附上 CLI 安裝說明連結。如果你偏好其他工具(例如本機跑 Python、Jupyter 或其他環境),仍可使用其中的概念指引(圖表選擇、色彩原則、註解技巧),並自行改寫程式碼。

可以搭配 CSV 或試算表資料使用 data-visualization 嗎?

可以。建議的流程是:

  1. 在 Python 中載入 CSV 或試算表資料。
  2. 轉成適合繪圖的 list 或 array。
  3. 使用 matplotlib(如技能範例所示)產生圖表。
  4. 將圖表存成 PNG 檔,作為儀表板、報表或簡報用圖。

data-visualization 技能主要關注「如何選擇與設計圖表」,你可以套用在任何你掌控的表格型資料來源上。

這個技能涵蓋哪些圖表類型?

技能中會明確介紹多種圖表,包括:

  • 長條圖(Bar charts)
  • 折線圖(Line charts)
  • 散點圖(Scatter plots)
  • 熱圖(Heatmaps)

同時也會說明圓餅圖的常見問題,以及在什麼情況下應改用其他圖表。Chart Selection Guide 會依你的資料型態與溝通目標,協助你在這些圖表中做選擇。

這個技能只是在講美觀排版,還是也有助於分析?

雖然重點放在 視覺化溝通,但整體指引也相當貼近分析工作流程,透過以下方式支援分析:

  • 鼓勵使用能清楚呈現趨勢、比較與關係的圖表類型
  • 避免使用容易誤導的座標軸與刻度
  • 透過適當註解凸顯關鍵重點

它不是完整的資料分析課程,但設計對象是希望結果「好看又可信」的分析師與資料科學家。

產生的圖表可以整合進簡報與儀表板嗎?

可以。Python/matplotlib 範例會輸出靜態圖像檔(例如 revenue.png),你可以:

  • 插入 PowerPoint、Keynote 或 Google Slides
  • 上傳到內部儀表板或報表工具
  • 附加在 PDF 或 HTML 報表中

由於圖表是透過腳本產生,你可以在資料更新時重新產生一次,並在各種報表中保持視覺風格一致。

我要去哪裡看 data-visualization 的所有相關檔案?

安裝完成後,你可以在工具中的檔案檢視頁籤,或直接開啟以下儲存庫位置:

  • https://github.com/inferen-sh/skills/tree/main/guides/design/data-visualization

在那裡可以看到 SKILL.md、相關指南內容,以及此儲存庫中其他技能共用的參考資料。

評分與評論

尚無評分
分享你的評論
登入後即可為這項技能評分並留言。
G
0/10000
最新評論
儲存中...