用Visualize把抽象概念變成可操作的互動範例-2

作者:許薰尹
精誠資訊/恆逸教育訓練中心資深講師
本系列共分為兩篇,介紹如何在 ChatGPT Desktop App 中使用 Visualize外掛程式,將資料分析、版本控制與資料庫查詢等抽象內容,轉換成容易理解、可以操作的互動範例。第一篇聚焦在Visualize 基礎與銷售儀表板的設計;第二篇則延伸應用在 Git Branch 與 SQL JOIN 的互動模擬。
前言
Visualize 的價值不只在於產生圖表,也在於讓使用者透過操作理解狀態與規則。本篇承接上篇,示範如何把 Git Branch 的版本流程,以及 SQL JOIN 的資料配對結果,做成可以切換、輸入與即時觀察的互動模擬器。
情境二:把抽象狀態做成互動模擬器
Visualize
不只適合資料圖表,也能根據文字描述建立帶有狀態變化的互動式介面。下一個範例是使用Git Branch管理程式版本的情境:假設目前只有 main 分支,要建立 feature分支修改網站的功能,完成後再合併回 main。這裡所要呈現的是 Git Graph 與指令造成的狀態變化,不需要建立真正的 Git Repository。
使用提示詞
@Visualize 建立一個 Git Branch 互動式模擬器,讓使用者手動輸入 Git 指令。初始狀態只有 main,輸入 git commit -m "Initial
commit" 後才出現第一個 Commit。使用 Git Graph 顯示 Commit、Branch、HEAD 與 main,介面使用繁體中文。
Visualize 會先建立Git Graph,這時先確認圖形是否清楚,參考下圖,模擬器下方有一個手動輸入「Git 指令」的區塊。

圖 1:Git 模擬器的初始狀態:只有 main,尚未建立 Commit
建立 Initial
commit
在Git 模擬器的「Git 指令」區塊輸入下列指令,再按「執行」完成後,圖上會出現第一個 Commit 圓點,main 也會指向它。
git commit -m "Initial commit"
執行的結果請參考下圖所示:

建立 feature
Branch
在Git 模擬器的「Git 指令」區塊輸入下列指令。圖上會多出一個
feature,但 HEAD 仍留在 main,代表目前還在main這個Branch;建立 Branch 只新增指標,不會複製
Commit。
git branch feature
執行的結果請參考下圖所示:

圖 3:建立 feature Branch
切換到 feature
在Git 模擬器的「Git 指令」區塊輸入下列指令。看到 HEAD → feature,就表示下一個 Commit
會建立在 feature。
git switch feature
執行的結果請參考下圖所示:

在 feature 建立 Commit
在Git 模擬器的「Git 指令」區塊輸入下列指令:
git commit -m "新增功能"
Git Graph 會新增圓點,feature 向前移動,而 main 保持原位,執行的結果請參考下圖所示:

圖 5:在 feature 建立 Commit
合併回 main
在Git 模擬器的「Git 指令」區塊輸入下列指令切換到main:
git switch main
執行的結果請參考下圖所示:

在Git 模擬器的「Git 指令」區塊輸入下列指令進行merge:
git merge feature
main 沒有其他變更時會
Fast-forward;兩邊都有新 Commit 時則會建立 Merge commit,執行的結果請參考下圖所示:

這個範例主要用到三種視覺化資訊:Commit 是節點,Branch 是指向節點的名稱,HEAD 表示目前所在的分支。若 main 沒有其他變更,合併可能呈現 Fast-forward;若兩邊各自有新的 Commit,則可能形成 Merge commit。
情境三:使用 SQL JOIN 比較資料配對結果
最後我們來看SQL JOIN Viaualize範例,以 Customers 與 Orders 兩張資料表為基礎。我希望畫面左側顯示
Customers資料表,右側顯示 Orders資料表,使用者可切換 INNER JOIN、LEFT JOIN、RIGHT JOIN,結果區塊則即時呈現哪些資料列被保留。這種介面把「查詢結果為什麼不同」直接放到操作流程中。
使用提示詞
@Visualize 建立一個 SQL JOIN 互動式模擬器。左邊顯示 Customers,右邊顯示 Orders,可以切換 INNER JOIN、LEFT JOIN、RIGHT JOIN,即時顯示哪些資料列會出現在結果中,並在下方提供操作說明與預期結果。介面使用繁體中文。
三種 JOIN 的差異:
|
JOIN 類型 |
結果保留哪些資料 |
常見使用方式 |
|
INNER JOIN |
只保留兩張資料表都能配對的資料列。 |
查看兩資料表共同存在的紀錄。 |
|
LEFT JOIN |
保留 Customers 資料表的全部資料,沒有訂單者仍會出現。 |
找出尚未建立訂單的客戶。 |
|
RIGHT JOIN |
保留 Orders 資料表的全部資料,對不到客戶者仍會出現。 |
檢查訂單與客戶的關聯缺漏。 |
執行的結果請參考下圖所示:

使用時先確認兩張資料表的共同欄位,再固定資料只切換 JOIN 類型。INNER JOIN 會留下兩表都有的資料;LEFT JOIN 保留 Customers 的全部資料,因此沒有訂單的客戶仍會出現;RIGHT JOIN 則保留 Orders資料表 的全部資料,方便檢查對不到客戶的訂單。空白欄位不一定是錯誤,也可能代表沒有找到配對資料。
SQL LEFT
JOIN執行的結果請參考下圖所示:

SQL
RIGHT JOIN執行的結果請參考下圖所示:

總結
Visualize 特別適合應用在資料分析、流程說明、概念教學、方案比較與互動模擬方面,讓原本需要大量文字解釋的內容,變成更直覺、容易理解與操作的視覺化內容。
Visualize 的使用流程可以濃縮為:上傳資料或描述需求 → 建立第一版 → 用自然語言逐項修改 → 加入篩選與互動 → 檢查結果與資料定義。
從銷售 Dashboard 到 Git Branch、SQL JOIN,三個範例展示了 Visualize
的不同面向:它可以整理資料、呈現比較、連動明細,也可以把指令與查詢規則轉成可操作的狀態介面。只要先說清楚資料、目標、呈現方式與互動規則,就能從一個簡單的提示詞開始,逐步形成完整的互動內容。
0 意見:
張貼留言