Matplotlib - klasa osi

Obiekt Axes jest obszarem obrazu z przestrzenią danych. Dana figura może zawierać wiele osi, ale dany obiekt osi może znajdować się tylko na jednej figurze. Axes zawiera dwa (lub trzy w przypadku 3D) obiekty Axis. Klasa Axes i jej funkcje składowe są podstawowym punktem wyjścia do pracy z interfejsem OO.

Obiekt Axes jest dodawany do figury poprzez wywołanie metody add_axes (). Zwraca obiekt Axes i dodaje osie w pozycji rect [left, bottom, width, height], gdzie wszystkie wielkości są ułamkami szerokości i wysokości figury.

Parametr

Poniżej znajduje się parametr dla klasy Axes -

  • rect - sekwencja wielkości [lewa, dół, szerokość, wysokość] o 4 długościach.

ax=fig.add_axes([0,0,1,1])

Następujące funkcje składowe klasy axes dodają różne elementy do wykresu -

Legenda

Plik legend()Metoda klasy axes dodaje legendę do wykresu. Potrzeba trzech parametrów -

ax.legend(handles, labels, loc)

Gdzie etykiety są sekwencją ciągów i obsługuje sekwencję wystąpień Line2D lub Patch. loc może być łańcuchem lub liczbą całkowitą określającą położenie legendy.

Ciąg lokalizacji Kod lokalizacji
Najlepsza 0
Górny prawy 1
Górny lewy 2
w lewym dolnym rogu 3
prawy dolny 4
Dobrze 5
Środek po lewej 6
Wyśrodkuj w prawo 7
dolny środek 8
górny środek 9
Środek 10

axes.plot ()

Jest to podstawowa metoda klasy axes, która wykreśla wartości jednej tablicy względem drugiej jako linie lub znaczniki. Metoda plot () może mieć opcjonalny argument w postaci ciągu formatu, który określa kolor, styl i rozmiar linii i znacznika.

Kody kolorów

Postać Kolor
'b' niebieski
'sol' Zielony
„r” Czerwony
'b' niebieski
'do' Cyjan
'm' Magenta
'y' Żółty
„k” czarny
'b' niebieski
„w” Biały

Kody znaczników

Postać Opis
'.' Znacznik punktu
„o” Znacznik okręgu
„x” Znacznik X
'RE' Marker diamentowy
„H” Marker sześciokątny
's' Znacznik kwadratowy
„+” Znacznik plus

Style linii

Postać Opis
'-' Linia ciągła
'-' Linia przerywana
„-”. Linia przerywana
':' Linia przerywana
„H” Marker sześciokątny

Poniższy przykład przedstawia wydatki na reklamę i dane dotyczące sprzedaży telewizora i smartfona w postaci wykresów liniowych. Linia przedstawiająca TV to linia ciągła z żółtym kolorem i kwadratowymi znacznikami, natomiast linia smartfona to przerywana linia z zielonym kolorem i okrągłym znacznikiem.

import matplotlib.pyplot as plt
y = [1, 4, 9, 16, 25,36,49, 64]
x1 = [1, 16, 30, 42,55, 68, 77,88]
x2 = [1,6,12,18,28, 40, 52, 65]
fig = plt.figure()
ax = fig.add_axes([0,0,1,1])
l1 = ax.plot(x1,y,'ys-') # solid line with yellow colour and square marker
l2 = ax.plot(x2,y,'go--') # dash line with green colour and circle marker
ax.legend(labels = ('tv', 'Smartphone'), loc = 'lower right') # legend placed at lower right
ax.set_title("Advertisement effect on sales")
ax.set_xlabel('medium')
ax.set_ylabel('sales')
plt.show()

Kiedy powyższa linia kodu jest wykonywana, generuje następujący wykres -