Jak dodać legendę do wykresu rozrzutu w matplotlib
Aby dodać legendę do wykresu rozrzutu w Matplotlib, możesz użyć następującej składni:
import matplotlib. pyplot as plt from matplotlib. colors import ListedColormap #define values, classes, and colors to map values = [0, 0, 1, 2, 2, 2] classes = [' A ', ' B ', ' C '] colors = ListedColormap([' red ', ' blue ', ' purple ']) #create scatterplot scatter = plt. scatter (x, y, c=values, cmap=colors) #add legend plt. legend ( * scatter.legend_elements ())
Poniższe przykłady pokazują, jak używać tej składni w praktyce.
Przykład 1: Legenda wykresu punktowego z wartościami
Poniższy przykład pokazuje, jak utworzyć wykres rozrzutu, na którym legenda wyświetla wartości:
import matplotlib. pyplot as plt from matplotlib. colors import ListedColormap #define data x = [3, 4, 4, 6, 8, 9] y = [12, 14, 17, 16, 11, 13] #define values, classes, and colors to map values = [0, 0, 1, 2, 2, 2] classes = [' A ', ' B ', ' C '] colors = ListedColormap([' red ', ' blue ', ' purple ']) #create scatterplot scatter = plt. scatter (x, y, c=values, cmap=colors) #add legend with values plt. legend ( * scatter.legend_elements ())
Przykład 2: Legenda wykresu rozrzutu z klasami
Poniższy przykład pokazuje, jak utworzyć wykres punktowy, na którym legenda wyświetla nazwy klas:
import matplotlib. pyplot as plt from matplotlib. colors import ListedColormap #define data x = [3, 4, 4, 6, 8, 9] y = [12, 14, 17, 16, 11, 13] #define values, classes, and colors to map values = [0, 0, 1, 2, 2, 2] classes = [' A ', ' B ', ' C '] colors = ListedColormap([' red ', ' blue ', ' purple ']) #create scatterplot scatter = plt. scatter (x, y, c=values, cmap=colors) #add legend with class names plt. legend (handles=scatter. legend_elements ()[ 0 ], labels=classes)
Zauważ, że w tej legendzie wyświetlane są określone przez nas nazwy klas (A, B, C) w przeciwieństwie do określonych przez nas wartości (0, 1, 2).
Dodatkowe zasoby
Jak zwiększyć rozmiar działki w Matplotlib
Jak dostosować pozycję tytułu w Matplotlib
Jak ustawić zakresy osi w Matplotlib