Print Head

Print Head

df.head()

Pembahasan Tentang Membuat Plot Scatter Dengan Warna Berbeda untuk Dataset Iris

Saya belajar data-analysis di Python dan menggunakan library matplotlib dan seaborn. Saya membuat sebuah Notebook di Kaggle. Saya mencoba membuat plot scatter yang menunjukkan rasio antara lebar dan panjang daun sepal dan petal.

sns.FacetGrid(iris, hue="Species", size=10) 
total_rows = iris.count
number_of_iris = len(iris)

sepalLengths = iris["SepalLengthCm"]
sepalWidths = iris["SepalWidthCm"]

petalLengths = iris["PetalLengthCm"]
petalWidths = iris["PetalWidthCm"]

plt.scatter(range(number_of_iris),(sepalLengths/sepalWidths))
plt.xlabel("ID")
plt.ylabel("Ratio")
plt.show()

Output adalah:

Saya mencoba membuat plot scatter yang menunjukkan rasio antara lebar dan panjang daun sepal dan petal. Kode saya bekerja dengan benar, tapi saya ingin menampilkan plot tersebut dalam tiga warna berbeda untuk membedakan tiga spesies yang berbeda.

Saya mengubah kode menjadi seperti ini:

total_rows = iris.count
number_of_iris = len(iris)

sepalLengths = iris["SepalLengthCm"]
sepalWidths = iris["SepalWidthCm"]

petalLengths = iris["PetalLengthCm"]
petalWidths = iris["PetalWidthCm"]

sns.FacetGrid(iris, hue="Species", size=10) \
 .map(range(number_of_iris),(sepalLengths/sepalWidths)) \
 .add_legend()

Tapi saya menerima error:

TypeError

Saya ingin tahu bagaimana cara membuat plot tersebut dengan warna berbeda untuk setiap spesies.

Sebagian data adalah:

47, 5.1, 3.8, 1.34, 1.6,0.2, 8.0, Iris-setosa
48, 4.6, 3.2, 1.44, 1.4,0.2, 7.0, Iris-setosa
49, 5.3, 3.7, 1.43, 1.5,0.2, 7.5, Iris-setosa
50, 5.0, 3.3, 1.52, 1.4,0.2, 7.0, Iris-setosa
51, 7.0, 3.2, 2.19, 4.7,1.4, 3.36, Iris-versicolor
52, 6.4, 3.2, 2.0, 4.5,1.5, 3.0, Iris-versicolor
53, 6.9, 3.1, 2.23, 4.9,1.5, 3.27, Iris-versicolor
54, 5.5, 2.3, 2.39, 4.0,1.3, 3.08, Iris-versicolor

Untuk membuat plot scatter dengan warna berbeda untuk setiap spesies, kita dapat menggunakan kode seperti ini:

plt.figure(figsize=(10,6))
sns.scatterplot(x="SepalLengthCm", y="SepalWidthCm", hue="Species", data=iris)
plt.title('Iris Dataset - Sepal Length vs Width')
plt.xlabel('Sepal Length (cm)')
plt.ylabel('Sepal Width (cm)')
plt.show()

Dalam kode di atas, kita menggunakan fungsi sns.scatterplot() untuk membuat plot scatter. Kita juga menggunakan parameter hue untuk menentukan warna berbeda untuk setiap spesies.

Kita dapat memanipulasi kode tersebut untuk mencapai hasil yang diinginkan.