======================================================
Seaborn adalah library Python yang digunakan untuk membuat plot-data yang lebih cantik dan mudah dipahami. Salah satu jenis plot-data yang paling umum digunakan adalah scatter plot, yaitu plot-data yang menunjukkan hubungan antara dua variabel.
Dalam artikel ini, kita akan belajar cara membuat plot scatter dengan Seaborn menggunakan dataset "tips" yang terdiri dari data tentang pengeluaran makan siang dan sore.
Membuat Plot Scatter
Pertama-tama, kita perlu memasukkan library Seaborn dan matplotlib:
import seaborn as sns
import matplotlib.pyplot as plt
Lalu, kita dapat membuat plot scatter dengan menggunakan fungsi sns.scatterplot()
:
tips = ... # dataset "tips"
sns.scatterplot(data=tips, x="total_bill", y="tip")
Dalam contoh di atas, kita menggunakan dataset "tips" dan menggambarkan variabel "total_bill" terhadap "tip".
Menggunakan Variabel sebagai Hue
Kita dapat menggunakan variabel lain sebagai hue untuk memberikan warna yang berbeda pada plot. Contohnya:
sns.scatterplot(data=tips, x="total_bill", y="tip", hue="time")
Dalam contoh di atas, kita menggunakan variabel "time" sebagai hue untuk memberikan warna yang berbeda pada plot.
Menggunakan Variabel sebagai Style
Kita juga dapat menggunakan variabel lain sebagai style untuk memberikan gambaran yang berbeda pada plot. Contohnya:
sns.scatterplot(data=tips, x="total_bill", y="tip", hue="time", style="time")
Dalam contoh di atas, kita menggunakan variabel "time" sebagai style untuk memberikan gambaran yang berbeda pada plot.
Menggunakan Variabel Numerik sebagai Hue
Jika kita ingin menggunakan variabel numerik sebagai hue, maka Seaborn akan melakukan mapping semantik secara kualitatif dan menggunakan palette warna default. Contohnya:
sns.scatterplot(data=tips, x="total_bill", y="tip", hue="size")
Dalam contoh di atas, kita menggunakan variabel "size" sebagai hue untuk memberikan warna yang berbeda pada plot.
Mengontrol Rang Warna
Kita dapat mengontrol range warna dengan menggunakan parameter palette
dan hue_norm
. Contohnya:
tip_rate = tips.eval("tip / total_bill").rename("tip_rate")
sns.scatterplot(data=tips, x="total_bill", y="tip", hue=tip_rate)
Dalam contoh di atas, kita menggunakan variabel "tip_rate" sebagai hue dan mengontrol range warna dengan menggunakan parameter palette
.
Menggunakan Marker yang Berbeda
Kita juga dapat menggunakan marker yang berbeda untuk memberikan gambaran yang berbeda pada plot. Contohnya:
markers = {"Lunch": "s", "Dinner": "X"}
sns.scatterplot(data=tips, x="total_bill", y="tip", style="time", markers=markers)
Dalam contoh di atas, kita menggunakan dictionary markers
untuk memberikan marker yang berbeda pada plot.
Menggunakan Plot Scatter dengan Data Wide
Kita dapat membuat plot scatter dengan data wide dengan menggunakan fungsi sns.scatterplot()
dan parameter data
. Contohnya:
index = pd.date_range("1 1 2000", periods=100, freq="m", name="date")
data = np.random.randn(100, 4).cumsum(axis=0)
wide_df = pd.DataFrame(data, index, ["a", "b", "c", "d"])
sns.scatterplot(data=wide_df)
Dalam contoh di atas, kita menggunakan dataset wide dan menggambarkan plot scatter dengan menggunakan parameter data
.
Menggunakan Relplot
Kita dapat menggunakan fungsi relplot()
untuk membuat plot scatter yang lebih rumit. Contohnya:
sns.relplot(data=tips, x="total_bill", y="tip", col="time", hue="day", style="day", kind="scatter")
Dalam contoh di atas, kita menggunakan fungsi relplot()
untuk membuat plot scatter yang berbeda dalam masing-masing subplot.