Dalam berbagai aplikasi statistik, kita seringkali perlu membuat plot scatter untuk menampilkan hubungan antara variabel-variabel. Dalam kasus ini, saya menggunakan library Seaborn dan fungsi lmplot()
untuk membuat plot scatter dengan warna dan bentuk yang berbeda.
Membuat Plot Scatter dengan Warna yang Berbeda
Dalam contoh di bawah ini, kita menggunakan dataset "iris" dari library Seaborn. Kita akan menggunakan argument hue
untuk definisi grup-data dengan warna yang berbeda. Dalam kasus ini, kita akan membagi data menjadi tiga group yaitu Setosa, Virginica, dan Versicolor.
import seaborn as sns
import matplotlib.pyplot as plt
df = sns.load_dataset('iris')
sns.lmplot(x="sepal_length", y="sepal_width", data=df, fit_reg=False, hue='species', legend=False)
plt.legend(loc='lower right')
plt.show()
Membuat Plot Scatter dengan Bentuk yang Berbeda
Selain menggunakan warna untuk definisi grup-data, kita juga dapat menggunakan bentuk marker untuk membedakan group-data. Dalam contoh di bawah ini, kita akan memberikan list of marker shapes ke argument markers
.
import seaborn as sns
import matplotlib.pyplot as plt
df = sns.load_dataset('iris')
sns.lmplot(x="sepal_length", y="sepal_width", data=df, fit_reg=False, hue='species', legend=False, markers=["o", "x", "1"])
plt.legend(loc='lower right')
plt.show()
Menggunakan Palette Warna lain
Kita juga dapat menggunakan palette warna lain selain default yang disediakan oleh Seaborn. Dalam contoh di bawah ini, kita akan menggunakan palette "Set2" dengan argument palette
.
import seaborn as sns
import matplotlib.pyplot as plt
df = sns.load_dataset('iris')
sns.lmplot(x="sepal_length", y="sepal_width", data=df, fit_reg=False, hue='species', legend=False, palette="Set2")
plt.legend(loc='lower right')
plt.show()
Mengontrol Warna untuk Setiap Grup
Alternatif lain untuk menentukan palette warna untuk setiap grup-data adalah dengan membuat dictionary yang mewakili level hue ke warna matplotlib. Dalam contoh di bawah ini, kita akan menggunakan dictionary untuk definisi warna untuk setiap group.
import seaborn as sns
import matplotlib.pyplot as plt
df = sns.load_dataset('iris')
sns.lmplot(x="sepal_length", y="sepal_width", data=df, fit_reg=False, hue='species', legend=False, palette=dict(setosa="#9b59b6", virginica="#3498db", versicolor="#95a5a6"))
plt.legend(loc='lower right')
plt.show()
Dengan menggunakan argument hue
di fungsi lmplot()
dari Seaborn, kita dapat membuat plot scatter dengan warna dan bentuk yang berbeda untuk membedakan group-data.