Matplotlib
庫 由於誕生的比較早,所以其預設的顯示樣式很難符合現在的審美,這也是它經常為人詬病的地方。
不過,經過版本更迭之後,現在 Matplotlib
已經內建了很多樣式表,
通過使用不同的樣式表,可以整體改變繪製圖形的風格,不用再調整一個個顯示引數。
首先,檢視內建的樣式表有哪些:
import matplotlib.pyplot as plt
plt.style.available
使用樣式表的方式有兩種:
一種是全域性樣式表設定,比如:
plt.style.use("ggplot")
隨後的程式碼中,所有繪製的圖形都是 ggplot
風格。
另一種區域性樣式表設定,比如:
with plt.style.context("classic"):
# 繪製圖形
pass
這種方式,樣式表只在 with
範圍內生效。
下面演示幾種風格差異比較大的樣式表。
首先,封裝一個繪製圖形的函數。
def draw():
x = np.array(range(10))
y = np.random.randint(10, 100, 10)
fig = plt.figure(figsize=[6,4])
fig.add_subplot(211)
plt.plot(x, y)
fig.add_subplot(212)
plt.hist(y)
with plt.style.context("classic"):
draw()
with plt.style.context("Solarize_Light2"):
draw()
with plt.style.context("bmh"):
draw()
with plt.style.context("dark_background"):
draw()
with plt.style.context("fast"):
draw()
with plt.style.context("ggplot"):
draw()
seaborn
是公認顏值比較高的繪相簿,所以 Matplotlib
也支援很多種seaborn
風格。
這裡使用的是預設的 seaborn
風格。
with plt.style.context("seaborn-v0_8"):
draw()
內建的樣式表方便易用,提供了許多預定義的樣式,可以快速幫助我們建立美觀的圖表。
使用內建的樣式表還有個好處是可以保持圖表的統一風格,使得圖表具有更高的可讀性和可維護性。
Matplotlib
提供的豐富的樣式表,可以滿足不同型別的繪圖需求,並且還可以通過自定義樣式表來實現更加個性化的繪圖效果。