05 進階
座標軸・刻度・標註
對數尺度呈現跨數量級的資料、twinx 雙 y 軸、自訂刻度位置與標籤、用 annotate 畫箭頭把目光帶到重點。
這堂課的完整程式碼在 Jupyter notebook 裡。點下面按鈕在 Colab 開啟,就能直接執行、修改、實驗——你的修改不會動到原檔。
資料畫對了,接下來是「讓人一眼讀懂」。這課處理座標軸的細節。
這堂課你會學到
- 對數尺度呈現跨好幾個數量級的資料
twinx()在同一張圖放兩種不同單位的資料- 自訂 x 軸刻度位置與標籤
annotate畫箭頭、加文字標重點
對數尺度
指數成長的資料用線性軸會「貼地又爆衝」,早期變化全看不到。一行改成對數軸,指數成長就變成一條直線:
ax.set_yscale("log")
雙 y 軸
兩組資料單位不同(溫度 vs 降雨量)時,用 twinx() 建立共用 x 軸的第二條 y 軸。務必把兩條 y 軸的標籤分別上色,否則讀者分不清哪條線對應哪個軸:
ax2 = ax1.twinx()
ax1.set_ylabel("Temperature", color="tab:red")
ax2.set_ylabel("Rainfall", color="tab:blue")
標註重點
ax.annotate("peak",
xy=(px, py), # 箭頭指向的點
xytext=(px + 2, py + 0.1), # 文字位置
arrowprops=dict(arrowstyle="->", color="crimson"))
👉 在 Colab 裡找一組「世界人口隨年份」的資料,分別用線性與對數 y 軸畫出來,親眼比較哪個更能看出早期趨勢。
#matplotlib
#axis
#log-scale
#annotate
#ticks
留言 0
留言載入中…