Menu
CoddyTech

Membuat Plot Kelas

Termasuk bagian Data dan Plot dalam perjalanan Machine Learning di Coddy. Pelajaran 55 dari 60.

Apakah class membentuk awan yang terpisah? Buat satu scatter untuk setiap class, masing-masing diberi nama dari target_names:

Bunga iris berdasarkan panjang dan lebar sepal, satu warna untuk setiap spesies: setosa membentuk awannya sendiri di kiri atas, sedangkan versicolor dan virginica bertumpang tindih di bagian tengah dan kanan

Kode di baliknya:

df = iris.frame
fig, ax = plt.subplots()
for i in range(3):
    group = df[df["target"] == i]
    ax.scatter(group["sepal length (cm)"], group["sepal width (cm)"], label=iris.target_names[i])
ax.set_title("Iris flowers by sepal size")
ax.set_xlabel("sepal length (cm)")
ax.set_ylabel("sepal width (cm)")
ax.legend()
plt.show()

Setiap pemanggilan memiliki warnanya sendiri, dan label=iris.target_names[i] mengubah 0, 1, dan 2 menjadi nama untuk legenda.

Setosa berbeda; versicolor dan virginica tumpang tindih. Model akan membuat kesalahan di area yang tumpang tindih.

challenge icon

Tantangan

Sedang

Apakah sampel ganas dan jinak membentuk kumpulan yang terpisah? Grafik rekan satu timmu tidak bisa menjawabnya: grafik itu menggambar seluruh load_breast_cancer dengan satu scatter, dalam satu warna.

  1. Ganti scatter itu dengan satu scatter untuk setiap class: mean radius pada sumbu mendatar, mean concave points pada sumbu tegak.
  2. Beri label masing-masing dengan nama class dari target_names.

Biarkan baris yang sudah disiapkan. Grafikmu seharusnya terlihat seperti yang ini, dibuat dari dua pengukuran lainnya:

Scatter sampel jaringan payudara berdasarkan mean texture dan mean smoothness, sampel ganas berwarna biru dan jinak berwarna oranye, dengan legenda yang menamai kedua class

Programmu tidak mencetak apa pun: Coddy memeriksa grafik dan menjelaskannya.

Coba sendiri

import matplotlib.pyplot as plt
from sklearn.datasets import load_breast_cancer

cancer = load_breast_cancer(as_frame=True)
df = cancer.frame

# Jangan ubah baris di bawah ini
fig, ax = plt.subplots()

# Perbaiki kode di sini
ax.scatter(df["mean radius"], df["mean concave points"])

# Jangan ubah baris-baris di bawah ini
ax.set_title("Cells by Diagnosis")
ax.set_xlabel("mean radius")
ax.set_ylabel("mean concave points")
ax.legend()
plt.show()
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Data dan Plot

Latihan sendiri: Compiler Python online