變更圖表樣式與色彩

Seaborn 資料視覺化入門

Content Team

DataCamp

為何要自訂?

更改樣式的原因:

  • 個人偏好
  • 提升可讀性
  • 引導解讀
Seaborn 資料視覺化入門

變更圖表樣式

  • 圖表的「style」含背景與座標軸
  • 預設選項:「white」、「dark」、「whitegrid」、「darkgrid」、「ticks」
  • sns.set_style()
Seaborn 資料視覺化入門

預設圖表樣式(「white」)

sns.catplot(x="age", 
            y="masculinity_important",
            data=masculinity_data,
            hue="feel_masculine",
            kind="point")

plt.show()

男性氣質調查的點圖

Seaborn 資料視覺化入門

圖表樣式:「whitegrid」

sns.set_style("whitegrid")

sns.catplot(x="age", 
            y="masculinity_important",
            data=masculinity_data,
            hue="feel_masculine",
            kind="point")

plt.show()

白色網格背景的點圖

Seaborn 資料視覺化入門

其他樣式

sns.set_style("ticks")

sns.catplot(x="age", 
            y="masculinity_important",
            data=masculinity_data,
            hue="feel_masculine",
            kind="point")

plt.show()

含刻度線的點圖

Seaborn 資料視覺化入門

其他樣式

sns.set_style("dark")

sns.catplot(x="age", 
            y="masculinity_important",
            data=masculinity_data,
            hue="feel_masculine",
            kind="point")

plt.show()

深色背景的點圖

Seaborn 資料視覺化入門

其他樣式

sns.set_style("darkgrid")

sns.catplot(x="age", 
            y="masculinity_important",
            data=masculinity_data,
            hue="feel_masculine",
            kind="point")

plt.show()

深色網格背景的點圖

Seaborn 資料視覺化入門

變更調色盤

  • 圖表的「palette」會改變主要圖形元素的色彩
  • sns.set_palette()
  • 可用預設或自訂調色盤
Seaborn 資料視覺化入門

發散型調色盤

四種發散型調色盤範例

Seaborn 資料視覺化入門

範例(預設調色盤)

category_order = ["No answer", 
                  "Not at all",
                  "Not very", 
                  "Somewhat", 
                  "Very"]

sns.catplot(x="how_masculine",
            data=masculinity_data,
            kind="count",
            order=category_order)

plt.show()

調查回應的計數圖

Seaborn 資料視覺化入門

範例(發散型調色盤)

sns.set_palette("RdBu")

category_order = ["No answer", 
                  "Not at all",
                  "Not very", 
                  "Somewhat", 
                  "Very"]

sns.catplot(x="how_masculine",
            data=masculinity_data,
            kind="count",
            order=category_order)

plt.show()

使用發散型調色盤的計數圖

Seaborn 資料視覺化入門

序列型調色盤

四種序列型調色盤範例

Seaborn 資料視覺化入門

序列型調色盤範例

馬力對每加侖英里數的散佈圖(序列型調色盤)

1 Waskom, M. L. (2021). seaborn: statistical data visualization. https://seaborn.pydata.org/
Seaborn 資料視覺化入門

自訂調色盤

custom_palette = ["red", "green", "orange", "blue",
                  "yellow", "purple"]

sns.set_palette(custom_palette)

自訂顏色名稱調色盤

Seaborn 資料視覺化入門

自訂調色盤

custom_palette = ['#FBB4AE', '#B3CDE3', '#CCEBC5', 
                  '#DECBE4', '#FED9A6', '#FFFFCC', 
                  '#E5D8BD', '#FDDAEC', '#F2F2F2']

sns.set_palette(custom_palette)

自訂 Hex 代碼調色盤

Seaborn 資料視覺化入門

變更比例尺

  • 圖表的「context」會改變圖形元素與標籤的比例
  • sns.set_context()
  • 由小到大:「paper」、「notebook」、「talk」、「poster」
Seaborn 資料視覺化入門

預設情境:「paper」

sns.catplot(x="age", 
            y="masculinity_important",
            data=masculinity_data,
            hue="feel_masculine",
            kind="point")

plt.show()

「notebook」情境的點圖

Seaborn 資料視覺化入門

較大情境:「talk」

sns.set_context("talk")

sns.catplot(x="age", 
            y="masculinity_important",
            data=masculinity_data,
            hue="feel_masculine",
            kind="point")

plt.show()

較大情境的點圖

Seaborn 資料視覺化入門

一起來練習吧!

Seaborn 資料視覺化入門

Preparing Video For Download...