Jak mogę uzyskać współrzędne pola wyświetlanego na poniższym wykresie?Współrzędne pola adnotacji w matplotlib
fig, ax = subplots()
x = ax.annotate('text', xy=(0.5, 0), xytext=(0.0,0.7),
ha='center', va='bottom',
bbox=dict(boxstyle='round', fc='gray', alpha=0.5),
arrowprops=dict(arrowstyle='->', color='blue'))
Próbowałem sprawdzić właściwości tego obiektu, ale nie mógł znaleźć coś nadaje się do tego celu. Istnieje właściwość o nazwie get_bbox_patch()
które mogłyby być na dobrej drodze, ale ja uzyskać wyniki w innym układzie współrzędnych (lub związanej z innym posesji)
y = x.get_bbox_patch()
y.get_width()
63.265625
dziękuję!
Proponuję przeczytać: http://matplotlib.org/users/transforms_tutorial.html Co jednostki chcesz współrzędne w? – tacaswell
Już to zrobiłem. Nie pomogłem wiele, ponieważ pokazuje, jak przekształcać współrzędne do różnych układów odniesienia, ale nie do szerokości czy wysokości. Myślę, że chcę "współrzędne danych". –
Podejrzewając, że szerokość jest we współrzędnych wyświetlania, szerokości są tylko różnicą między dwoma punktami, więc jeśli potrafisz robić współrzędne, możesz robić szerokości. Pudełko jest wyśrodkowane w miejscu, w którym je umieścisz, potrzebujesz tylko transformacji, którą chcesz (są one zapakowane z ich odwróceniem). – tacaswell