2026.06.12

從一架飛機的軌跡開始

一個資料分析師,用 AI 把台灣的開放資料變成會呼吸的地圖

當 AI 已能自己寫 ETL,資料人不是消失 —— 是升級為系統設計者
MIGU資料分析師
FR24 · 41,766 TRACKS · THREE.JS GLSL
OPENING · 開場P2 / 81
migu 頭像 · 黑貓

Hi, 我是 migu

資料分析師 · 待過三間公司的數據團隊
  • 大學碰過 GIS(都計背景),出社會走資料分析,很久沒再碰
  • 金融、新創都待過
  • AI 的努力嘗試者
DATA ANALYST · 3 TEAMS · GIS SIDE PROJECT
OPENING · 路線圖P3 / 81

今天的四段路

成果介紹 → 心法 → 專案示範 → 展望

本場最重
01
SHOWCASE
成果介紹
P4–27 · 60 MIN
02
AI CODING
心法
P28–36 · 22 MIN
03
BUILD
專案示範
P37–51 · 35 MIN
04
HORIZON
展望
P52–57 · 15 MIN
本業=半放權(有掌握度,不放心放手) GIS=完全放權(什麼都不會,練得最徹底)
01
SHOWCASE · 成果介紹

成果介紹

從一個個的 CSV,到一張會呼吸的台灣地圖。陸、海、空全部疊起來。

01 SHOWCASE02 AI CODING03 BUILD04 HORIZON
SHOWCASE · 成果介紹P4 / 81
DAY 0 第一張地圖
起點 · KEPLER.GL

一切的起點

把一份 CSV 轉成 GeoJSON 拖進 Kepler.gl,就有了第一張地圖 ——「原來台灣有這麼多資料,原來轉成地圖並不難」。

KEPLER.GL · CSV → GeoJSON · 0 行程式
SHOWCASE · 成果介紹P5 / 81
LIVE DEMO
CASE 1

Mini Taipei

捷運 → 台鐵 → 高鐵,三套軌道疊成一張會動的地圖。體驗到動態的魅力。

  • TDX 開放資料
  • 6 SYSTEMS
  • 351 TRAINS LIVE
SHOWCASE · 成果介紹P6 / 81
SOLAR SYSTEM
CASE 2

衛星

用公開 TLE 推算衛星軌道,再延伸到太陽系 —— 同一套做法,只要有資料,都可以無限延伸。

CELESTRAK TLE · SGP4
SHOWCASE · 成果介紹P7 / 81
CASE 3

船舶

航港局 AIS 即時點位 —— 青藍光球 + 30 分鐘漸層拖尾,畫出台灣周邊海域的脈動。

  • AIS 即時點位
  • ~10 MIN 更新
  • 台灣周邊海域
SHOWCASE · 成果介紹P8 / 81
LIVE DEMO
CASE 4 · MINI TAIWAN PULSE

台灣的脈動

天空、海洋、大地、街道、清運 —— 五脈共動,疊成同一張會呼吸的地圖。第一次從「靜態 JSON」進化成「時空間資料庫」。

5脈共動
飛機 / 船 / 列車 / 公車 / 垃圾車
23圖層
十大分類 · 獨立 toggle
5,700+ 輛公車
TDX · 30s polling
SHOWCASE · 整合案例P9 / 81
農田範圍
灌排溝渠 · 水系
河川幹線
整合案例 · 農 × 水

三個部會的孤島,疊成一張圖

農田、河川、溝渠、堤防、淹水潛勢同框 —— 這不是地圖漂亮,是把孤島 JOIN 起來

400MB ~5MB
PMTILES · HTTP RANGE REQUEST
SHOWCASE · 整合案例P10 / 81
整合案例 · 醫療資源

把民生疊在人口上,缺口自己浮出來

醫院、診所、藥局、AED、長照點位 + 等時圈 —— 看見可及性,也看見醫療沙漠

  • NHI + 衛福部
  • POI × 人口 × 等時圈
SHOWCASE · 整合案例P11 / 81
整合案例 · 大雨與災害

一條 Timeline,全部聯動

雷達回波、水庫、雨量、災害示警 —— 不同頻率在 RPC 層統一,一拖時間軸全部同步回放

  • CWA 雷達
  • 雨量 10MIN
  • 水庫日更 → 1 TIMELINE
SHOWCASE · 動態展示P12 / 81
LIVE DEMO · 切換實機

會動的台灣

切換到電腦,實際展示 —— 船、公車、列車同時在地圖上跑。
接著,把鏡頭拉到天上 ✈

SHOWCASE · PLAN RP13 / 81
LIVE DEMO
PLAN R · 航班軌跡

飛機的軌跡,可以是一件藝術品

在北美館看展時冒出的念頭。資料本來是冰冷的 JSON,用對渲染手法,它就是藝術。

41,766
TRACKS 軌跡
1,356
AIRPORTS 機場
48
樣本期
REACT 19 · MAPBOX · THREE.JS · GLSL
SHOWCASE · PLAN RP14 / 81
東京灣迴旋進場 ↘
模式 ① · 軌跡視覺化

把一段時間的所有起降,畫成一張航跡圖

高度色變 + 光軌拖尾,一眼看出進場 / 離場的結構。疊起來,就是一張機場的「指紋」

  • RJTT 羽田
  • 1,318 TRACKS
SHOWCASE · 軌跡畫廊P15 / 81
世界最忙機場

亞特蘭大的「賽道」

五條平行跑道 + 等待航線,畫出像賽車場的幾何 —— 流量本身,就是一種形狀。

KATL · 1,839 TRACKS · WORLD'S BUSIEST
SHOWCASE · PLAN RP16 / 81
VIEWSHED — 高度越高、看得越遠
模式 ② · 跟隨模式

相機鎖定一架飛機,跟著它飛完全程

顯示航司 / 機型 / 註冊號 / hex,並依高度畫出該機在空中的可見扇形(Viewshed)

SHOWCASE · PLAN RP17 / 81
模式 ③ · 進場管制區(空域)

規範長什麼樣

禁航區、限航區、管制盤的 3D 極光圖層。點限航區,顯示時段限制(如 2300–0200 UTC)。

  • TW eAIP (PDF 手抄)
  • UK OpenAIP(API)
SHOWCASE · 案例P18 / 81
案例 · 小港 RCKH

實際看到禁航區可能的影響

禁航區圖層 × 實際軌跡疊在一起,迂迴角度肉眼可見 —— 把兩張疊起來,才是情報。

RCKH · 1,271 起降 · 59% 國際 / 40% 國內
SHOWCASE · 案例P19 / 81
案例 A · 倫敦機場體系

一座城市的天空,怎麼分流

EGLL / EGKK / EGSS / EGGW + 支線約 10 場 —— Heathrow 單點樞紐密集進場,周邊分流。

  • EGLL — HUB
  • 約 10 AIRPORTS
SHOWCASE · 案例P20 / 81
KLGA
KEWR
KJFK
案例 B · 紐約都會三角

同一個都會,三場輪轉

KJFK / KEWR / KLGA 日間輪轉、晚間集中 —— 對照倫敦的單點樞紐,是兩種城市性格。

SHOWCASE · 案例P21 / 81
日期 A — 戰前
日期 B — 戰時
案例 · 時間軸下的地緣事件

戰前、戰時、戰後 —— 航跡怎麼改道

同機場、不同日期對比。杜拜 OMDB(2,740 軌跡),看見迴避路線與戰後復甦。

同一支 API · 拉不同日期 · COMPARE 模式
SHOWCASE · 能力收斂P22 / 81

一支飛航 API,能長出多少東西

同一份 FR24 軌跡資料 —— 藝術、情報、分析、整合。

藝術
Plan R 光軌 —— 把冷資料渲染成夜空畫作
情報
體系對比 · 地緣時序 · 規範 vs 現實
41,766
FR24 軌跡資料
分析
航司效率 · 燃油 · 天氣
→ P24–26
整合
併進 Mini Taiwan Pulse 圖層
心法 —— 資料先備,機會後現
SHOWCASE · 資料源對比P23 / 81

同一片天空,不同的資料源

FR24 與 OpenSky,看到的東西不一樣。

FR24付費 · 細顆粒 · 進場細節漂亮
VS
OpenSky免費 · 粗顆粒
SHOWCASE · 資料源對比P24 / 81
過境航路 — 天上的高速公路
起降 — 交流道
OpenSky 的拿手好戲 · 空域覆蓋

拉遠看,航路就像天上的高速公路

大面積無差別覆蓋是 OpenSky 的長處 —— 進場細節用 FR24、空域骨架用 OpenSky。

SHOWCASE · 延伸分析P25 / 81
延伸分析 ①

國籍航空,飛得一樣嗎?

同一條航線、同一款飛機,不同航司的差異 —— 單一航司只看得到自家資料,公開軌跡能做跨航司對標
RCTP ↔ RJAA
11 AIRLINES
221 FLIGHTS
3D 航跡 多角度檢視 航司比較 dashboard
SHOWCASE · 延伸分析P26 / 81
延伸分析 ②

高度剖面與燃油

x = 累積航距、y = 高度,看出階段爬升 / 巡航分層。
OPENAP 估算
繞路率中位 6.8–7.6%
巡航高度剖面圖
同款 A321neo,三家航司巡航高度差
4,000FT
純粹是航司策略 —— 不是天氣、不是機型。
誠實揭露限制
軌跡稀疏 · 重量假設 0.85×MTOW · 忽略風場 → 相對比較可信,絕對值僅參考。
SHOWCASE · 延伸分析P27 / 81
延伸分析 ③ · 跨域整合壓軸

下雨天,飛機真的會多繞

把氣象署的雨量,疊上 FR24 的軌跡 —— 以台北/桃園日雨量分「雨天」與「乾日」,逐班比對。
CWA 雨量站 約 218 站
雨天 11 天 · 58 班
乾日 4 天 · 20 班
天氣 × 航跡 雨天 vs 乾日 繞路 dashboard
繞路率(中位)
8.69%+0.72 ppvs7.96%
航行時間(中位)
137+2 分vs135 分
盤旋等待比例 —— 雨天才有 holding
6.9%vs0.0%
CWA 雨量(為防災收)× FR24 軌跡(為藝術收) = 第三種洞察
SHOWCASE · PLAN RP28 / 81
LIVE DEMO · 切換實機

飛航軌跡互動應用

切換到電腦,現場操作 —— 3D 航跡、航司分色、點擊看單班航班資訊。

SHOWCASE · 收束P29 / 81

這一整套,是一個循環

探索 → 收集 → 儲存 → 呈現 → 分析 → 回到探索。

同一個
資料庫
SUPABASE + 收集器
探索
EXPLORE
收集
COLLECT
儲存
STORE
呈現
RENDER
分析
ANALYZE
所有作品,是同一個資料庫長出來的多個 App —— 新增一個 App 的邊際成本,趨近於零。
SYSTEM
SHOWCASE · 幕後系統

系統,長這樣

前面看到的成果,背後都來自同一套資料系統 ——
接收 → 整合 → 生成 → 觸發
接下來,帶你看它怎麼一塊塊組起來。

01 SHOWCASE02 AI CODING03 BUILD04 HORIZON
SYSTEM · 我的這套流程P30 / 81
SYSTEM · 系統四步驟P31 / 81
// 我的系統長這樣

資料 → 整合 → 生成 → 觸發

每一步都可以單獨抽換 —— 整套不需要重蓋,加新東西也不會牽動其他層。

01
資料接收
DATA INTAKE
外部 + 開放資料源
標準化、驗證、入庫
02
知識整合
KNOWLEDGE FUSION
把零散資料變成
可推理的知識結構
03
分析生成
ANALYZE & GEN.
推理、視覺化、報告
Pulse / Art / Brief
04
行動觸發
FEEDBACK LOOP
事件驅動 / 任務調度
自動回饋 · 形成閉環
// 接下來
逐個展開 —— 從資料接收的生命週期,到 Agent 怎麼用、應用怎麼長出來。
SYSTEM · STEP 01 · 資料接收P32 / 81
SYSTEM · STEP 01 · 知識庫 P33 / 81
資料接收 · 第一步

手動下載 → 上網找 → 系統化建構

A
// 最早期

手動下載

data.gov.tw 點 Excel
自己讀、自己存、自己想。
format.xlsx / .csv
where~/Downloads
limit人腦記憶
B
// 中期

上網找

API、PDF 報告、各縣市開放平台
—— 散落各處
sources22 縣市平台
extraNGO + 學術 + 民間
problem沒有索引
C
// NOW

結構化知識庫

每筆 metadata 標準化
存進 SQLite catalog
sourcesdata.gov.tw
+ 所有縣市平台
+ 各部會平台
queryable 可自動化查詢
scalable 可自動化拓展
SYSTEM · STEP 02 · COLLECTORS P34 / 81
資料接收 · 第二步

40+ 個 Collector,每天早上一份 Review

// 來源涵蓋
陸運YouBike · Bus · VD · Freeway
鐵路TRA Train (live) · Timetable
航運Ship AIS · Ship TDX
航空FR24 · OpenSky
氣象Weather · CWA Satellite · Rain
災害Earthquake · NCDR Alerts
太空Satellite TLE · Launch
水文Reservoir · River · Ground
空品AQI · MicroSensor
連錯 3 次 立即發 Telegram 告警
📊每天早上 09:00 推送 Daily Review
// 每天 09:00 推送 Daily Review · Telegram
Telegram daily report
SYSTEM · STEP 02 · 知識整合P35 / 81
SYSTEM · AGENT · 規模的詛咒 P36 / 81
為什麼要 Agentic OSINT

規模的詛咒

data.gov.tw · 各縣市 · 民間 — 人類掃不完
52,891
+22 縣市平台 ~6–7 萬筆(含重疊)
+民間 / NGO / 學術 還沒算
= 你的人腦掃不完 → 這就是 LLM 該介入的地方
SYSTEM · AGENT · 盤點 × 關聯 P37 / 81
把資料轉成 LLM 可觸及的形式之後

交給 Agent,盤點 → 關聯 → 產出

// 前置條件
資料 → LLM 可讀
統一目錄 · metadata · 結構化欄位
// AGENT 動腦
大量關係 × 跨主題
人腦無法逐筆比對的搜尋空間
// 產出
應該互相影響的資料集
自動拉出 · 互相關聯 · 可被驗收

盤點

跨平台、跨主題、跨格式 逐筆 vetting 不再只是關鍵字搜尋

關係抽取

抓出資料集之間應該會有的影響關係 時間 · 空間 · 主題

互相關聯

把零散資料拉成可被推理的網絡 Agent 自己跑下一步

// 一句話 資料能被 LLM 看見,Agent 才能幫你發現「哪些資料應該放在一起看」
SYSTEM · AGENT · 火災主題報告 P38 / 81
Pipeline 跑完一次的真實產出

輸入一句話,產出整套盤點報告

「分析台灣火災相關公開資料」
// 候選池逐輪擴張
582
關鍵字命中
1,945
同義詞 + 主題擴張
2,404
FTS5 補搜 + 去重
21 平台 · 73,900 筆 統一目錄
// 一條龍 6 階段(自動拆解)
A
預防
B
應變
C
通報
D
起火分析
E
損失
F
報表
22 縣市 × 6 階段 — 自動產出覆蓋矩陣
// 獨家盤點
新竹 火災潛勢圖
臺北 搶救困難地區
桃園 埤塘救援
// GAPS
× 沒有即時火災 API
× 事件級座標稀缺
× 災後追蹤不公開
Pipeline 自動產出
我 沒 寫 一 個 字
SYSTEM · AGENT · 實際運作 · 動腦 P39 / 81
案例 · 垃圾清運主題盤點

Claude 自己拆主題 · 自己分層

Claude layered datasets
① Layer 1 / 2 / 3 自動分層 · 點線面 × 動靜
Claude listing pipelines
② 統一目錄 + Pipeline 狀態 + Gap 分析
SYSTEM · AGENT · 實際運作 · 查詢結果 P40 / 81
案例 · 加油站 / 用電統計合成策略

Agent 直接回 · 可落地的合成方案

gas_stations schema
① gas_stations schema · 中油 + 台塑 + OSM 補洞策略
electricity stats by township
② 用電統計到鄉鎮?粒度 × 更新頻率 × 可用性對表
SYSTEM · STEP 03 · 分析生成P41 / 81
SYSTEM · 應用層 · 系統化分層 P42 / 81
// CASE STUDY · WATER

以「水資源」為例

政府兩三百筆水資料,先依點 / 線 / 面盤點,再依怎麼來 → 怎麼留 → 怎麼用 → 何時警示重組。
// LAYERED GIS
POINT · LINE · AREA
→ NARRATIVE
POINT · 站點
STATIC 水庫位置 雨量站 地下水位站
DYNAMIC 即時雨量 水庫水位(hr) 河川水位即時
LINE · 河川 / 水道
STATIC 河川流域 水道網路 OSM Waterway
DYNAMIC 流量推估 (少量、可推算)
AREA · 邊界 / 網格
STATIC 集水區邊界 水利分區 行政區
DYNAMIC 降雨網格 災害示警 polygon 土壤含水量
// 重組為故事性架構
01
怎麼來?
FACE降雨網格+FACE集水區邊界
02
怎麼留?
POINT水庫水位+FACE土壤含水量
03
怎麼用?
LINE河川流量+POINT地下水位
04
何時警示?
FACE網格水量趨勢+FACE災害示警
盤點圖層,再依邏輯串成敘事——同一批資料,組裝出一個能講故事的系統。
SYSTEM · 應用層 · CASE 01 · 火災分析 P43 / 81

113 年火災事件 · 全國 15,405 筆
從 datagov:13764 一路打到「縣市 × 起火原因」

datagov:13764 · TGOS street-level 9,226 筆
鄉鎮 fallback 6,179 筆 · 空間用精確點位、時序用全量
fire spatial ranking by city
① 空間分布 · 縣市排名(總量 / 死傷 / 件每百 km²)
fire causes by city
② 主要原因 × 縣市 × 主導起火原因
// SO WHAT
這份 reflect 報告完全由 Agent 串 API 跑出來。「新北市最大宗起火原因是電氣因素 30.9%」「屏東縣是菸蒂 35.2%」——資料源換成 API 之後,這種跨欄位、跨主題的描述性分析,可以被 Agent 主動產出。
SYSTEM · STEP 04 · 行動觸發 · 自動回饋P44 / 81
SYSTEM · 主題巡邏P45 / 81
// 未來模式 · 給目標

Agent 跑完整循環

人類角色 —— 給目標、收報告。中間五個齒輪自己轉。

發現主題 DISCOVER 收集資料 COLLECT 整合分析 INTEGRATE 產出報告 REPORT 監測告警 MONITOR CONTINUOUS LOOP
// STATUS
雛形已經在跑 · 還沒做完 —— 但循環的形狀已經出現。
SYSTEM · AGENT 自己跑P46 / 81
// 結果 · 當循環建立起來

Agent 自己掃 · 自己分析 · 自己給結果

人不用守在前面。給目標、收報告 —— 其餘的事 Agent 自己排隊跑完。

01
定期掃資料
每週跑開放資料目錄差分,找出新增 / 更新的 dataset。
02
自己執行分析
調用 Agent Orchestrator + GIS Agent,挑工具、跑空間 / 時序分析
03
定期回傳結果
brief / 報告 / 圖表自動產出,事件記錄與學習滾回去。
// SO WHAT
當這個 loop 跑起來,產出不需要排程 —— 主題自己冒出來、報告自己送到信箱
SYSTEM · AGENT · 週報產出P47 / 81
★ 自動產出 · 每週一份 本週新增開放資料 brief
SYSTEM · 循環產出P48 / 81

這個循環,真的長出了東西

用前面這套自動循環跑出來的應用 —— Mini Taiwan Info · 航運頁,全台 277 港一頁看完。

Mini Taiwan Info 航運頁 全台 277 港
AI CODING
02 AI CODING · 心法

心法

工具很少,難的是觀念。
「我不是裝了很多工具才開始 —— 我是先開始,工具自己長出來。

01 SHOWCASE02 AI CODING03 BUILD04 HORIZON
AI CODING · 心法P49 / 81

我為什麼一直在「取代自己」

資料分析師,是 AI 海嘯的第一排 —— 從 ChatGPT 剛出,就在想怎麼自己取代自己

本業 · 資料分析
SEMI-DELEGATION 半放權
2022 · CHATGPT懷疑
介入
驗證
上線 TRUST ISSUES — 有掌握度,就會懷疑 AI
GIS · SIDE PROJECT
FULL DELEGATION 完全放權
2025 · 啟動什麼都不會,只能放權
下線 FULL DELEGATION — 不會,反而敢全放
AI 原生工作流
AI-NATIVE
GIS 成了試驗場 —— 兩條線,最後交會在同一個工作方式
AI CODING · 心法P50 / 81

同一件事,四個版本

與 AI 協作的演化 —— 從你給「問題」,到你給「方向」,你交付的層級在變

你給「問題」
0.0
問答
// 進階版 Google
問一句、答一句 —— 用來查語法、想思路、寫一段範例。
你給「任務」
1.0
任務交辦
// 它做一部分
給檔案、補 SQL、畫圖、寫 component —— 你交一份規格,它交一份產出。
你給「目標」
2.0
Agent 化
// 不給步驟,只看結果
給目標、不給步驟 —— 它自己決定怎麼做,你驗收只看目標有沒有達成
你給「方向」
3.0
全自動 Agent
// 你只剩驗收
給長期方向,它持續想辦法滿足 —— 自己排程、自己迭代、自己長大。
你現在在哪個版本?
GIS SIDE PROJECT → 大多在 2.0 / 3.0 · 本業 → 還在 1.0 → 2.0
AI CODING · 心法P51 / 81
「你最近有沒有一個
想做、但一直沒做的東西?」
不要先裝備,先動手 —— 直接跟 AI 說,開始就對了
AI CODING · 心法P52 / 81

Harness 是什麼

為開發打造的一個好環境 —— 由這些零件組成。

CLAUDE.md
憲法 —— 原則與紀律
Skills
可複用能力
Hooks
時機觸發
Agents
任務分流
Agent Browser
讓 AI 看螢幕
Git
版控存檔
給大方向 → 驗收產出
Harness = 把零件組起來 —— 你下大方向,系統自己跑
AI CODING · 心法P53 / 81

最小可行,先用這幾個

憲法 + 技能 + 一雙眼睛 + 存檔 —— 其他的,需要時再長

CLAUDE.md
先記 —— 專案的憲法
Skills
先記 —— 可複用能力
Hooks
進階 · 先放一邊
Agents
進階 · 先放一邊
Agent Browser
一定要裝 —— AI 的眼睛
Git
一定要有 —— 敢放手的保險
給大方向 → 驗收產出
這 4 個,今天就能開工
AI CODING · 心法P54 / 81

三個一定要建立的觀念

相信它 · 版控它 · 守住費用與資安。

01 TRUST

讓 AI 完全做好一件事

別「你一半、它一半」—— 半放權兩邊都累,責任也切不乾淨。

能不能全自動?
02 VERSION

版控 + 沙盒

怕東西被刪的解法是 Git,不是不放權 —— 還要叫他檢查資安資料有沒有誤上傳。

叫他開 Git、叫他 Commit
03 GUARD

費用與資安

會不會產生費用?私鑰有沒有暴露?—— 答案其實 AI 自己就能告訴你。

不確定,就直接問 AI
AI CODING · 心法P55 / 81

料從哪來

開放資料的幾個入口 —— 不用一開始找齊,邊做邊補

Twinkle 全國開放資料鏡像

開放資料整套鏡像,可以直接下 query。
MIRROR · QUERYABLE

data.gov.tw 政府資料開放平臺

中央 + 各縣市門戶的總入口。
52,891 筆

TDX 交通資料流通服務

公車 / 捷運 / 台鐵 / 高鐵 —— 即時與靜態都有。
交通 · REALTIME

Flight API 航班軌跡

FR24 看細節、OpenSky 看尺度。
FR24 / OPENSKY
技術已幫你避掉大部分坑 —— 善用 Git,先求覆蓋、先動手
AI CODING · 心法P56 / 81

靈感從哪來

我固定追的 AI 電子報 —— 心法:找靈感 > 找教學,看別人做到什麼程度,再回來實作。

中文報紙型
Brief AIai.briefnewsletter.com
知識複利週報|朱騏知識整理 × AI
英文報紙型
The Rundown AItherundown.ai
Lenny's NewsletterPM × AI · 免費版就夠
中國視角
增长黑客 AI 周报zengzhang.ai
AIGC Weeklyquaily.com/op7418
技術 / 學術
愛好 AI Engineer|ihower月更 · 追臉書更快
Agentic AI Weekly · RDIBERKELEY · 看看就好
講了這麼多觀念 —— 不如直接帶你看,航班追蹤怎麼一步步做出來
BUILD
03 BUILD · 專案示範

專案示範

航班追蹤,從零到飛起來。
「前面看的是成果,這段我把蓋子打開 —— 你照著走,也做得出來。

01 SHOWCASE02 AI CODING03 BUILD04 HORIZON
BUILD · 專案示範P57 / 81
STEP 0

你想做什麼?

我的念頭很單純 —— 把台灣機場的飛行軌跡用三維畫出來

A SKETCH IN MY HEAD
RCTP · 3D FLIGHT ARC
Plan R 桃園光軌成品
成品 · PLAN R
好起點不是規格書,是一個具體到能想像畫面的念頭 —— 太抽象,AI 也接不住
BUILD · 專案示範P58 / 81
STEP 1

拆成兩塊

跟 AI 把專案拆開:資料,以及你要怎麼操作它

✈ 3D 航跡(念頭)
資料 DATA
  • 去哪拿?
  • 什麼格式?
  • 要多少錢?
先解 → P40–43
介面 UI
  • 怎麼呈現?
  • 怎麼互動?
後解 → P45–48
先資料、後呈現 —— 順序不要反
BUILD · 專案示範P59 / 81
STEP 2-①

先讓 AI 盤點資料源

不要自己埋頭 Google —— 請它先列出可能的選項

「我想拉台灣機場的航班軌跡,有哪些資料源?各有什麼取捨?」
AI · 候選清單
TDX官方 · 只有基礎航班資料免費
OpenSky大面積覆蓋 · 有延遲免費
FR24 API軌跡精細 · 進場漂亮
FR24 爬蟲能拿到 · 但別碰灰色地帶
你只要先拿到可能選項清單 —— 不用馬上決定
BUILD · 專案示範P60 / 81
STEP 2-②

自己驗一遍:內容與品質

AI 給的清單要落地,你得親手確認

驗內容 — CHECKLIST
有哪些欄位SCHEMA
涵蓋範圍COVERAGE
更新頻率FREQUENCY
盤點交給 AI ——「值不值得用」自己驗。
驗品質 — 拉一小段樣本看
OpenSky 樣本軌跡
✓ 大面積覆蓋 OK ✗ 降落顆粒度不夠 —— 拉下來才知道
BUILD · 專案示範P61 / 81
STEP 2-③

申請、讀文件、開始試

把 API 文件直接丟給 AI,它幫你接 —— 你只動手一步

01
申請 KEY
AI 教你去哪申請
02
丟 API 文件
AI 讀懂
03
設 .env
你動手 · 10 秒
04
「試拉一天,
注意費用」
AI 開跑
RCTP_0611.jsonl
放權,但守門 ——「注意費用」一定要對 AI 講
BUILD · 專案示範P62 / 81
STEP 2-④

我真的把四個都試了

TDX / OpenSky / FR24 / 爬蟲 —— 落在同一張取捨圖上。

付費 →
← 免費
↑ 細顆粒
↓ 粗顆粒
TDX免費 · 只有基礎資料 → 不符
OpenSky大面積可 · 降落不夠漂亮
FR24 爬蟲GRAY ZONE
★ FR24 API效果最好 · 付費 → 最終選擇
為了好效果,付費值得
BUILD · 專案示範P63 / 81
STEP 3

決定處理方式,就開跑

存哪、怎麼清、怎麼切 —— 講清楚,就讓它執行

規格 — 你定
存哪tracks/
格式JSONL
清理去重 DEDUPE
切法按機場 / 區域
規格凍結線
執行 — 它跑
fetch 165 機場
去重 41,766 筆軌跡
切成 1,356 個機場檔
先把規格講定,再放手讓它跑。
BUILD · 專案示範P64 / 81
STEP 4

先看到第一個東西

開新對話,一句需求:「顯示在可 3D 轉動的地圖上,要有夜晚飛行軌跡的感覺」。

BEFORE — 冰冷的 JSONL
{"lat": 25.0927,
 "lon": 121.2281,
 "alt": 2400,
 "ts": 1718064000, …}
× 41,766 條軌跡
──▶
一句需求
第一版光軌
第一個能動的版本
FIRST LIGHT
別在腦中空想規格 —— 讓畫面先出來,需求會被畫面逼出來
BUILD · 專案示範P65 / 81
STEP 5

功能是一層層疊上去的

不是事先列好的規格 —— 做的過程中跟 AI 討論、一起疊上去

L5時間軸最新的最亮
L4航區 POLYGON
L3顏色(按高度)
L2多機場
L1底圖 + 單機場軌跡第一版
疊完的樣子 — Plan R 全景
疊完的樣子 —— 多機場 → 高度配色 → 航區 → 時間軸,每一層都是做的時候才冒出來的
BUILD · 介面P66 / 81
介面 ① · CLAUDE DESIGN

一句話,畫出真的介面

功能多了才處理美感,順序對。
真實工作畫面
未經剪輯
Claude Design 對話與介面成品
一句話需求
「請依據文件與過往的分頁,產生醫療頁面的介面設計」
PROMPT 全文就這 24 個字
介面成品
右側整頁 Mini Taiwan Info 醫療頁 —— 元件、版面、配色一次出來,可再客製。
BUILD · 介面P67 / 81
介面 ② · CHATGPT

出形狀、出案例、出名字

丟 README 問「給我儀表板的幾個介面設計方向」—— 一次出好幾個方向,挑著用
CHATGPT 出點子
CLAUDE DESIGN 落地
ChatGPT 介面發想對話
BUILD · 觀念P68 / 81

重做,常常比優化快

在 AI 的世界,推導比迭代更便宜 —— 你帶走的是經驗,不是程式碼。

路徑 A · 持續優化
PATCH ON PATCH
路徑 B · 重新推導
EXPERIENCE PACKED
✕ 越補越亂
● 帶著經驗重開
開新對話 · 開新資料夾 · 已知需求和規格
不要捨不得砍掉重練 —— Plan R 就是這樣重生的
BUILD · 觀念P69 / 81

把它當同事,用講的更快

描述問題、給可接受範圍,甚至反問它

「幫我撈經過空域上的所有飛機。」
14 個字 · 沒有脈絡
用講的:背景是我在做航班追蹤、資料每 10 分鐘更新;限制是只有經緯度和高度;我能接受 5 分鐘延遲——要做這件事,我還有哪些東西要先思考?
200 字脈絡 · 語音轉文字 60 秒倒完
你對同事不會只丟一句「幫我想辦法」——對 AI 也別這樣
BUILD · 上手建議P70 / 81

今天就可以開始,不用先學 coding

我的建議很簡單 —— 現在就去下載這些 AI 工具,動手試

不用變成工程師
你不需要先學會寫程式
真正重要的是「怎麼描述問題、怎麼驗收結果」 —— 這些用講的就會,不必先懂語法。
名詞半衰期 < 半年
追名詞,追不完
每個 AI 名詞、框架,往往活不過半年就被新觀念取代。與其追,不如現在動手累積手感。
學「怎麼用」,比學「語法」更值得。
BUILD · 上手建議P71 / 81

現在,是 AI 補貼最猛的紅利期

這些公司都在砸錢補貼我們用 AI —— 趁現在,用得更好、更快。

CLAUDE PRO 訂閱
US$200 / 月
聽起來很貴
實際可用掉
≈ US$8,000
的 API 額度
聽起來貴,其實是補貼 —— 現在不用,才是真的虧
BUILD · 現場挑戰P72 / 81

現場挑戰|One Shot

實際抓一次 —— 2026/06/03 澎湖機場的所有起降軌跡,在地圖上用 3D 畫出來看

LIVE
目標 · 澎湖機場(RCQC)
2026/06/03 當天所有起降
# oneshot prompt
2026/06/03 澎湖機場當天所有起降軌跡,
渲染在開放地圖上、3D 顯示軌跡
點擊看航班資訊,做成單頁網頁。
拆解 取資料 渲染 上色 互動
彩排畫面 — 預期產出
彩排畫面 · 預期產出
重點不是完美 ——
從一句話到能動,比你想的快。
BUILD · 怎麼開始P73 / 81

真的要開始,記住這些

三個心態先建立,再配幾個實戰技巧。

心態 · MINDSET
相信 AI 做得到
預設「AI 可以做得更好」,然後放權給它做。
先嘗試,別被嚇到
別被各種新聞嚇到 —— 做了才知道能與不能(守好邊界)。
不怕做錯
存檔就能重來,即使大錯重寫,也比你想的快。
技巧 · TACTICS
01鬼打牆做不出來,就換 session、換更強的模型,別一直來回。
02先 plan 再做,成功率明顯提升。
03context 給足 —— 只丟一句話,它也聽不懂。
04很少一次 oneshot 完成,要持續來回迭代
05遇到問題先問 AI,但交叉比對、小心求證。
BUILD · RECAPP74 / 81

如果只帶走三句話

有人問我踩過什麼坑 —— 其實沒有,因為是一路跟 AI 協作長出來的。真要說,記住這三句就夠。

01
先做就對了
02
把邊界守好再開始
03
遇到問題就直接問 AI
掌握這幾點,就能做出不錯的成效。
HORIZON
04 HORIZON · 展望

展望

我待過三間公司的數據團隊,站在第一線看到很不一樣的樣貌 —— 也看到同一股力量正在重塑它們

3 TEAMS · 第一線觀察
01 SHOWCASE02 AI CODING03 BUILD04 HORIZON
HORIZON · 展望P75 / 81

兩種團隊結構

集中型 vs 分散型 —— 第一線看到的取捨,中立、不評斷

集中型CENTRALIZED
分析 業務 業務 業務
交流多、跨團隊問題早發現
離業務遠、仰賴個人特質
輪調 + 固定對接
分散型EMBEDDED
業務 業務 業務 業務
節奏一致、需求快、領域熟
孤立、少外部動態
平行結構 + 定期交流
HORIZON · 展望P76 / 81

金融 vs 新創

拿到的資料、能動的彈性,差很多

金融新創
資料乾淨度
高 — 時間花在找洞察
要自己處理
彈性
編制完整、流程固定
高 — 跟業務一起討論達標
決策速度
看流程
交付快 → 決策快
差異不是優劣,是階段
HORIZON · 展望P77 / 81

資料分析師會消失嗎?

坦白說,可能是第一批被取代的領域 —— 但不是消失,是上移

過去 — 人做全部
  • 寫 SQL
  • 出報表
  • 給結論
一人一案、線性產出
角色上移
維護系統結構 · 語義層
確保分析 Agent 的正確性 · 處理複雜分析
人 · 少數
分析 Agent
SQL / 報表 / 結論 —— 大量、全自動
AI · 大量
人數變少,每個人的槓桿變大 —— 第 1 頁說的「系統設計者」,在這裡收口
HORIZON · 展望P78 / 81

分析的民主化

不是去找分析師 —— 是去問你自己的 Agent

PM
業務
行銷
營運
財務
工程
語義層 + 資料庫
ANALYST AS DESIGNER
分析師的價值:從「做分析」→「設計 Agent、保證可靠
HORIZON · 展望P79 / 81

如果是你們,怎麼開始

三個可以馬上做的選擇。

01 START

先動手做一個小東西

選一個內部痛點,用最小集合試一輪 —— CLAUDE.md + Skills + Browser + Git。

本週就能開工
↩ 呼應 P33
02 EXHAUST

把一份資料源用到底

像 FR24 —— 資料先備,長出藝術、情報、分析、整合多種應用。

新應用邊際成本 ≈ 0
↩ 呼應 P21
03 DESIGN

往「設計 Agent」移

把重複的分析抽成可複用的 Agent / Skill,讓別人自己問。

槓桿放大
↩ 呼應 P55–56
先求覆蓋、先求動手 —— 問題與 ROI 會自己浮出來
CLOSING · 結語P80 / 81

離開前,記得三件事

01
先動手
開始就對了
02
完全放權
只做架構 + 驗收
03
資料先備
機會後現
CLOSING · Q&AP81 / 81

Q & A

GitHub QR
GITHUB
ianlkl11234s
Threads QR
THREADS
@ianlkl1314
LinkedIn QR
LINKEDIN
Min-Hung Cheng
黑貓彩蛋