Matplotlib - przekształca
Pakiet matplotlib jest zbudowany na podstawie struktury transformacji, aby łatwo przemieszczać się między układami współrzędnych. Można użyć czterech układów współrzędnych. Systemy opisano pokrótce w poniższej tabeli -
Koordynować | Obiekt transformacji | Opis |
---|---|---|
Dane | ax.transData | Układ współrzędnych danych lądowych użytkownika. kontrolowane przez xlim i ylim |
Osie | ax.transAxes | Układ współrzędnych osi. (0,0) jest na dole po lewej, a (1,1) jest na górze po prawej stronie osi. |
Postać | rys.transFigure | Układ współrzędnych rysunku. (0,0) jest na dole po lewej, a (1,1) jest na górze po prawej stronie rysunku |
pokaz | Żaden | To jest układ współrzędnych pikseli wyświetlacza. (0,0) to lewy dolny róg, a (szerokość, wysokość) prawy górny róg wyświetlacza w pikselach. Alternatywnie zamiast None można użyć (matplotlib.transforms.IdentityTransform ()). |
Rozważmy następujący przykład -
axes.text(x,y,"my label")
Tekst jest umieszczany w teoretycznym położeniu punktu danych (x, y). Dlatego mówilibyśmy o „współrzędnych danych”.
Używając innych obiektów transformacji, można kontrolować umieszczanie. Na przykład, jeśli powyższy test ma być umieszczony w środku układu współrzędnych osi, należy wykonać następujący wiersz kodu -
axes.text(0.5, 0.5, "middle of graph", transform=axes.transAxes)
Te transformacje mogą być używane dla dowolnego rodzaju obiektów Matplotlib. Domyślna transformacja dlaax.text jest ax.transData i domyślna transformacja dla fig.text jest fig.transFigure.
Układ współrzędnych osi jest niezwykle przydatny podczas umieszczania tekstu w osiach. Często możesz chcieć, aby dymek tekstowy znajdował się w stałej lokalizacji; na przykład w lewym górnym rogu panelu Osie i pozostaw to miejsce na stałe podczas przesuwania lub powiększania.