Efsaneler (grafik açıklamaları) net veri görselleştirmesi için önemlidir, ancak bazen grafiği karmaşıklaştırırlar. Matplotlib, efsaneleri tamamen kaldırmanıza veya daha temiz görseller için gizlemenize olanak tanıyan çeşitli yollar sunar. Bu kılavuz, dört etkili tekniği inceliyor.
İçindekiler
- Efsaneyi Doğrudan Kaldırma
- Efsaneyi Gizleme
- Efsane Oluşumunun Önlenmesi
- Öznitelik Atamasıyla Efsaneyi Kaldırma
1. Efsaneyi Doğrudan Kaldırma
Bu yaklaşım, oluşturulduktan sonra efsaneyi ortadan kaldırmak için matplotlib.axes.Axes.get_legend().remove()
kullanır. Basittir ve hiçbir iz bırakmaz.
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6], label='Line 1')
ax.plot([1, 2, 3], [7, 8, 9], label='Line 2')
legend = ax.legend() # Efsaneyi oluştur
legend.remove() # Kaldır
plt.show()
2. Efsaneyi Gizleme
matplotlib.axes.Axes.get_legend().set_visible(False)
daha fazla kontrol sağlar. Efsane bellekte kalır ve daha sonra set_visible(True)
kullanılarak gösterilebilir.
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6], label='Line 1')
ax.plot([1, 2, 3], [7, 8, 9], label='Line 2')
legend = ax.legend()
legend.set_visible(False)
plt.show()
3. Efsane Oluşumunun Önlenmesi
En verimli yöntem, efsane oluşturulmasını engellemektir. plot()
fonksiyonu içinde label='nolegend'
(veya kullanılmayan herhangi bir etiket) kullanın.
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6], label='nolegend')
ax.plot([1, 2, 3], [7, 8, 9], label='nolegend')
plt.show()
4. Öznitelik Atamasıyla Efsaneyi Kaldırma
Axes nesnesinin legend_
özniteliğini None
olarak ayarlamak, mevcut herhangi bir efsaneyi kaldırır ve gelecekte oluşturulmasını önler.
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6], label='Line 1')
ax.plot([1, 2, 3], [7, 8, 9], label='Line 2')
ax.legend_ = None
plt.show()
Doğru yöntemi seçmek ihtiyaçlarınıza bağlıdır. Hemen kaldırma için 1. ve 4. yöntemler verimlidir. Potansiyel olarak yeniden gösterim için 2. yöntem en iyisidir. Efsanenin gereksiz olduğunu bildiğinizde oluşturmayı engellemek (3. yöntem) en uygunudur.