seaborn.objects.Plot.theme#

Plot.theme(config, /)#

控制繪圖中元素的樣式。

注意

自訂繪圖樣式的 API 尚未定案。目前,唯一有效的引數是一個 matplotlib rc 參數的字典。(此字典必須作為位置引數傳遞。)

此方法很可能在未來版本中增強。

Matplotlib rc 參數的說明文件請參考以下頁面: https://matplotlib.dev.org.tw/stable/tutorials/introductory/customizing.html

範例

預設主題使用與 seaborn.set_theme() 相同的參數,不帶額外引數

p = (
    so.Plot(anscombe, "x", "y", color="dataset")
    .facet("dataset", wrap=2)
    .add(so.Line(), so.PolyFit(order=1))
    .add(so.Dot())
)
p
../_images/objects.Plot.theme_1_0.png

傳遞 rc 參數的字典來變更繪圖外觀

p.theme({"axes.facecolor": "w", "axes.edgecolor": "slategray"})
../_images/objects.Plot.theme_3_0.png

許多(但不是全部)標記屬性預設會反映主題參數

p.theme({"lines.linewidth": 4})
../_images/objects.Plot.theme_5_0.png

透過傳入樣式函數的輸出套用 seaborn 樣式

from seaborn import axes_style
p.theme(axes_style("ticks"))
../_images/objects.Plot.theme_7_0.png

或套用 matplotlib 提供的樣式

from matplotlib import style
p.theme(style.library["fivethirtyeight"])
../_images/objects.Plot.theme_9_0.png

多個參數字典應傳遞給同一個函數呼叫。在 Python 3.9+ 上,您可以使用字典聯合語法

from seaborn import plotting_context
p.theme(axes_style("whitegrid") | plotting_context("talk"))
../_images/objects.Plot.theme_11_0.png

所有 Plot 實例的預設主題可以使用 Plot.config 屬性變更

so.Plot.config.theme.update(axes_style("white"))
p
../_images/objects.Plot.theme_13_0.png

如需詳細資訊,請參閱 繪圖設定