跳轉至

建立 2026-10-13 更新 2026-10-13

Plotly 學習網

Plotly Express(plotly.express,通常簡寫為 px)是 Python 繪圖套件 Plotly 的高階介面:把 pandas DataFrame 丟進去、指定哪個欄位對應到 x、y、顏色或大小,一行程式就能產生可縮放、可懸停查看數值、可匯出成網頁的互動圖表。本站以繁體中文詳細說明 Plotly Express 的用法,並彙整官方與 YouTube 上的優質影音教學。

上面這張可以互動的氣泡圖,只用了下面這一行 Plotly Express:

import plotly.express as px

df = px.data.gapminder().query("year == 2007")
px.scatter(df, x="gdpPercap", y="lifeExp", size="pop", color="continent",
           hover_name="country", log_x=True, size_max=55)

最該先懂的 20%

學 Plotly Express 不需要背幾十個函式。掌握下面四件事,就能應付八成以上的日常繪圖需求:

  • 1. 長格式資料(tidy data)


    Plotly Express 預期「一列一筆觀測、一欄一個變數」。資料整理對了,畫圖只是指定欄位名稱。

    資料格式

  • 2. 一套共通參數


    x、y、color、size、facet_col、hover_name、animation_frame……所有 px 函式都共用同一組參數名稱,學一次全部通用。

    共通參數全攻略

  • 3. 十個最常用的圖


    scatter、line、bar、histogram、box、pie、sunburst、treemap、choropleth、imshow,涵蓋比較、趨勢、分布、組成與地理五大問題。

    基本圖表

  • 4. Figure 與 update_* 方法


    px 回傳的是 go.Figure。要改標題、座標軸、圖例或線條樣式,用 update_layout、update_traces、update_xaxes 微調即可。

    樣式與客製化

學習路線

本站依照「先打底、再展開、最後輸出」的順序安排:

階段 內容 頁面
1. 入門基礎 安裝與執行環境、Figure 結構、長格式與寬格式資料 入門基礎
2. 核心觀念 所有 px 函式共用的參數 共通參數全攻略
3. 各類圖表 基本圖表、分布統計、比例階層、分面動畫、地圖、3D 與進階圖 Plotly Express 詳解
4. 美化與輸出 模板、配色、標籤、懸停資訊;存成 HTML/PNG 樣式與客製化、輸出與分享
5. 影音補充 官方講座與 YouTube 精選教學 影音教學
6. 自我挑戰 用內建資料集完成練習題 自我挑戰練習

版本說明

本站內容以 Plotly 7.1(2026 年 9 月發布)為準。Plotly 7 移除了舊的 scatter_mapbox、choropleth_mapbox、density_mapbox,改用不需要 token 的 scatter_map、choropleth_map、density_map;靜態圖片輸出也只支援 Kaleido v1 以上。如果您看到舊教學使用 *_mapbox,請換成對應的 *_map 函式。

常見問題

Plotly Express 和 Plotly Graph Objects 差在哪?

Plotly Express 是高階介面,一個函式呼叫就建立整張圖,適合探索資料與大多數報表;Graph Objects(plotly.graph_objects,簡寫 go)是低階介面,要自己一條一條加入 trace 並設定版面,適合 Plotly Express 沒有提供的特殊圖形。兩者產生的都是同一種 go.Figure 物件,所以可以先用 px 畫,再用 go 的方法補細節。詳見 Figure 結構。

Plotly 和 Matplotlib 該選哪一個?

需要互動(縮放、懸停、點選圖例篩選)或要放到網頁、Dash 應用程式時,選 Plotly;需要高度客製化的論文用靜態圖,或專案已大量使用 Matplotlib/Seaborn 時,Matplotlib 仍很合適。Plotly 也能用 write_image 輸出 PNG、SVG、PDF 等靜態圖。

Plotly 要付費嗎?

不用。plotly(Python 套件)與 plotly.js 都是 MIT 授權的開源軟體,本機繪圖、存成 HTML 都不需要帳號或網路連線。Plotly 公司另有付費的 Dash Enterprise 與 Plotly Studio 等商業產品,但學習與使用 Plotly Express 不需要它們。

圖表要怎麼分享給沒有安裝 Python 的人?

用 fig.write_html("chart.html") 存成單一 HTML 檔,任何瀏覽器打開都能互動。要放進簡報或文件時,用 fig.write_image("chart.png") 存成圖片(需另外安裝 kaleido)。詳見 輸出與分享。

官方資源

想認識唯客學院,請看 關於我們。