Python'da nasıl düzeltilir: açıklamaya eklenecek etiketlerin bulunduğu tutamaçlar bulunamadı
Matplotlib’i kullanırken karşılaşabileceğiniz bir uyarı:
No handles with labels found to put in legend.
Bu uyarı genellikle iki nedenden biriyle ortaya çıkar:
1. Grafik verileri için etiket oluşturmayı başaramadınız.
2. Olay örgüsünü oluşturmadan önce bir efsane oluşturmaya çalıştınız.
Aşağıdaki örneklerde her iki senaryoda da bu uyarının nasıl önleneceği gösterilmektedir.
Örnek 1: Grafik verileri için etiket oluşturmayı başaramadınız.
Matplotlib’de gösterge ve etiketlerle bir çizgi grafiği oluşturmak için aşağıdaki kodu kullanmaya çalıştığımızı varsayalım:
import matplotlib. pyplot as plt
import pandas as pd
#define data values
df = pd. DataFrame ({' x ': [18, 22, 19, 14, 14, 11, 20, 28],
' y ': [5, 7, 7, 9, 12, 9, 9, 4],
' z ': [11, 8, 10, 6, 6, 5, 9, 12]})
#add multiple lines to matplotlib plot
plt. plot (df[' x '], color=' green ')
plt. plot (df[' y '], color=' blue ')
plt. plot (df[' z '], color=' purple ')
#attempt to add legend to plot
plt. legend ()
No handles with labels found to put in legend.
Matplotlib çizgi grafiğini oluşturur, ancak No tanıtıcılar ile etiketler bulunamadı uyarısını alırız.
Bu uyarıyı önlemek için grafikteki her satıra bir etiket sağlamak amacıyla label argümanını kullanmalıyız:
import matplotlib. pyplot as plt
import pandas as pd
#define data values
df = pd. DataFrame ({' x ': [18, 22, 19, 14, 14, 11, 20, 28],
' y ': [5, 7, 7, 9, 12, 9, 9, 4],
' z ': [11, 8, 10, 6, 6, 5, 9, 12]})
#add multiple lines to matplotlib plot
plt. plot (df[' x '], label=' x ', color=' green ')
plt. plot (df[' y '], label=' y ', color=' blue ')
plt. plot (df[' z '], label=' z ', color=' purple ')
#attempt to add legend to plot
plt. legend ()
Etiketlerle bir efsane oluşturulduğunu ve bu sefer herhangi bir uyarı almadığımızı unutmayın.
Örnek 2: Konuyu oluşturmadan önce bir efsane oluşturmaya çalıştınız.
Matplotlib’de gösterge ve etiketlerle bir çizgi grafiği oluşturmak için aşağıdaki kodu kullanmaya çalıştığımızı varsayalım:
import matplotlib. pyplot as plt
import pandas as pd
#define data values
df = pd. DataFrame ({' x ': [18, 22, 19, 14, 14, 11, 20, 28],
' y ': [5, 7, 7, 9, 12, 9, 9, 4],
' z ': [11, 8, 10, 6, 6, 5, 9, 12]})
#attempt to add legend to plot
plt. legend ()
#add multiple lines to matplotlib plot
plt. plot (df[' x '], label=' x ', color=' green ')
plt. plot (df[' y '], label=' y ', color=' blue ')
plt. plot (df[' z '], label=' z ', color=' purple ')
No handles with labels found to put in legend.
Matplotlib çizgi grafiğini oluşturur, ancak No tanıtıcılar ile etiketler bulunamadı uyarısını alırız.
Bu uyarıyı önlemek için satırları çizime ekledikten sonra plt.legend() kullanmamız gerekiyor:
import matplotlib. pyplot as plt
import pandas as pd
#define data values
df = pd. DataFrame ({' x ': [18, 22, 19, 14, 14, 11, 20, 28],
' y ': [5, 7, 7, 9, 12, 9, 9, 4],
' z ': [11, 8, 10, 6, 6, 5, 9, 12]})
#add multiple lines to matplotlib plot
plt. plot (df[' x '], label=' x ', color=' green ')
plt. plot (df[' y '], label=' y ', color=' blue ')
plt. plot (df[' z '], label=' z ', color=' purple ')
#attempt to add legend to plot
plt. legend ()
Etiketlerle bir efsane yaratılıyor ve bu sefer hiçbir uyarı almıyoruz.
Ek kaynaklar
Aşağıdaki eğitimlerde Python’daki diğer yaygın hataların nasıl düzeltileceği açıklanmaktadır:
Pandas’ta KeyError Nasıl Düzeltilir
Nasıl düzeltilir? ValueError: float NaN int’ye dönüştürülemiyor
Nasıl düzeltilir? ValueError: İşlenenler şekillerle yayınlanamadı