Matplotlib定制:精解顏色、字體、線型與標記
導語
Matplotlib 是 Python 數據可視化領域的基石。雖然它的默認樣式足以滿足快速分析的需求,但要創作出具有專業水準、信息清晰、視覺美觀的圖表,就必須掌握其強大的定制功能。本文將深入探討 Matplotlib 中最常用的幾個定制選項:顏色、字體、線型和標記,幫助你將圖表從“能看”提升到“好看”。
1. 🎨 玩轉顏色 (Color)
顏色是圖表中最直觀的視覺元素。Matplotlib 提供了多種靈活的方式來指定顏色。
- 預定義顏色名稱:如
'blue'
,'green'
,'red'
等。 - 縮寫:如
'b'
(blue),'g'
(green),'r'
(red),'k'
(black)。 - 十六進制字符串:如
'#FF5733'
,與網頁顏色表示法一致。 - RGB/RGBA 元組:范圍在
[0, 1]
之間的浮點數值,如(0.1, 0.2, 0.5)
或(0.1, 0.2, 0.5, 0.8)
(包含透明度)。
import matplotlib.pyplot as plt
import numpy as npx = np.linspace(0, 10, 100)plt.plot(x, x + 0, color='blue') # 預定義名稱
plt.plot(x, x + 1, color='g') # 縮寫
plt.plot(x, x + 2, color='#FFC300') # 十六進制
plt.plot(x, x + 3, color=(1.0,0.2,0.3)) # RGB元組plt.title("Matplotlib 顏色定制")
plt.show()
2. ?? 設置字體 (Font)
合適的字體能顯著提升圖表的可讀性和專業感。你可以針對標題、坐標軸標簽等單獨設置,也可以進行全局配置。
fontsize
:設置字體大小,可以是整數或預定義字符串(如'large'
,'small'
)。fontfamily
:設置字體族,如'serif'
,'sans-serif'
,'monospace'
。fontweight
:設置字體粗細,如'bold'
,'light'
。
x = np.linspace(0, 10, 100)
y = np.sin(x)plt.plot(x, y)# 定制標題和坐標軸標簽的字體
plt.title("字體定制示例", fontsize=16, fontweight='bold', fontfamily='SimHei')
plt.xlabel("X軸", fontsize=12, fontfamily='SimHei')
plt.ylabel("Y軸", fontsize=12, fontfamily='SimHei')# 設置刻度標簽的字體
plt.tick_params(axis='both', labelsize=10)plt.show()
?? 注意:fontfamily
需要系統中存在對應字體(如 SimHei
用于顯示中文)。
3. 📈 控制線型 (Linestyle)
通過改變線條的樣式,可以輕松地區分多條數據系列。
linestyle
或ls
:設置線條樣式。linewidth
或lw
:設置線條寬度。
常用線型:
'-'
或'solid'
:實線(默認)'--'
或'dashed'
:虛線':'
或'dotted'
:點線'-.'
或'dashdot'
:點劃線
x = np.linspace(0, 10, 100)plt.plot(x, x + 0, linestyle='-', linewidth=2, label='Solid')
plt.plot(x, x + 1, linestyle='--', linewidth=2.5, label='Dashed')
plt.plot(x, x + 2, linestyle=':', linewidth=3, label='Dotted')
plt.plot(x, x + 3, linestyle='-.', linewidth=3.5, label='Dash-dot')plt.title("Matplotlib 線型與寬度")
plt.legend()
plt.show()
Ai 產品推薦
😳 0v0 AI 助手推薦、官網:https://0v0.pro
- 🆓 開源模型全免費:Llama、Qwen、Deepseek 等
- 😲 基礎模型全免費:gpt-4o、o4-mini 、gpt-5-mini 等
- ?? 對話真正無限制:不限時間、不限次數
- 🫡 每周免費一個旗艦模型:本周免費:gpt-5 ,不限使用!
LLM AI API 推薦 🗨?
🖐? 按量計算、官網:https://llm-all.pro
- 😊 opneai 、cluade、genimi、gork 等模型:0.5:1刀 、官方 1 折
- 🤓 國內模型 豆包、千問 、deepseek、kimi 等:2 - 6 折
- ?? 除了以上模型外,還包含全球各類以上未列出的模型
👺 按次計算、官網:https://fackai.chat
- 國內外全模型
- 1 :100次,性價比推薦
4. 📍 添加標記 (Marker)
在數據點上添加標記是突出顯示實際測量值的好方法,尤其是在離散數據或折線圖中。
marker
:設置標記的樣式。markersize
:設置標記的大小。markerfacecolor
:設置標記的填充顏色。markeredgecolor
:設置標記的邊緣顏色。
常用標記:
'o'
:圓形'.'
:點's'
:正方形'^'
:上三角形'+'
:加號'*'
:星形
x = np.arange(10)
y = x**2plt.plot(x, y, linestyle='--', color='blue', marker='o', markersize=8, markerfacecolor='yellow', markeredgecolor='red')plt.title("Matplotlib 標記定制")
plt.show()
總結
掌握 Matplotlib 的顏色、字體、線型和標記定制,是數據可視化從入門到精通的必經之路。這些看似簡單的參數組合起來,能夠創造出無限的可能。通過不斷實踐,你可以隨心所欲地設計出既美觀又具表現力的圖表,清晰地傳達數據背后的故事。希望本文能為你打開 Matplotlib 定制化世界的大門。