Bagaimana mengubah urutan elemen dalam legenda matplotlib
Anda dapat menggunakan potongan kode berikut untuk mengubah urutan elemen dalam legenda Matplotlib:
#get handles and labels handles, labels = plt. gca (). get_legend_handles_labels () #specify order of items in legend order = [1,2,0] #add legend to plot plt. legend ([handles[idx] for idx in order],[labels[idx] for idx in order])
Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.
Contoh: mengubah urutan elemen pada legenda Matplotlib
Misalkan kita membuat diagram garis berikut di Matplotlib:
import pandas as pd import matplotlib. pyplot as plt #create data df = pd. DataFrame ({'points': [11, 17, 16, 18, 22, 25, 26, 24, 29], 'assists': [5, 7, 7, 9, 12, 9, 9, 4, 8], 'rebounds': [6, 8, 8, 10, 14, 12, 12, 10, 11]}) #add lines to plot plt. plot (df['points'], label='Points', color='green') plt. plot (df['assists'], label='Assists', color='steelblue') plt. plot (df['rebounds'], label='Rebounds', color='purple') #add legend plt. legend ()
Elemen legenda ditempatkan sesuai urutan kita menambahkan baris ke plot.
Namun, kita dapat menggunakan sintaks berikut untuk menyesuaikan urutan elemen dalam legenda:
import pandas as pd import matplotlib. pyplot as plt #create data df = pd. DataFrame ({'points': [11, 17, 16, 18, 22, 25, 26, 24, 29], 'assists': [5, 7, 7, 9, 12, 9, 9, 4, 8], 'rebounds': [6, 8, 8, 10, 14, 12, 12, 10, 11]}) #add lines to plot plt. plot (df['points'], label='Points', color='green') plt. plot (df['assists'], label='Assists', color='steelblue') plt. plot (df['rebounds'], label='Rebounds', color='purple') #get handles and labels handles, labels = plt. gca (). get_legend_handles_labels () #specify order of items in legend order = [1,2,0] #add legend to plot plt. legend ([handles[idx] for idx in order],[labels[idx] for idx in order])
Perhatikan bahwa kami menentukan:
- urutan = [1, 2, 0]
Itu berarti:
- Item pertama dalam legenda haruslah label yang awalnya berada pada posisi indeks 1 dari legenda lama (“Membantu”).
- Elemen kedua dari legenda haruslah label yang awalnya berada pada posisi indeks 2 dari legenda lama (“Memantul”)
- Elemen ketiga pada legenda harus berupa label yang semula berada pada posisi indeks 0 dari legenda lama (“Poin”)
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan operasi umum lainnya di Matplotlib:
Bagaimana mengubah posisi legenda di Matplotlib
Bagaimana menempatkan legenda di luar plot Matplotlib
Bagaimana mengubah ukuran font legenda di Matplotlib