Come posso ottenere le coordinate della casella visualizzate nel grafico seguente?Coordinate della casella di annotazioni in 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'))
ho cercato di ispezionare le proprietà di questo oggetto, ma non riuscivo a trovare qualcosa di adatto a questo scopo. C'è una proprietà chiamata get_bbox_patch()
che potrebbe essere sulla strada giusta, però, ottenere risultati in un sistema di coordinate diverso (o associato a una proprietà diversa)
y = x.get_bbox_patch()
y.get_width()
63.265625
Grazie mille!
vi consiglio di leggere questo: http://matplotlib.org/users/transforms_tutorial.html Quali unità vuoi le coordinate in? – tacaswell
Già fatto. Non ho aiutato molto perché mostra come trasformare le coordinate in diversi sistemi di riferimento, ma non in larghezza o altezza. Penso di volere "coordinate dati". –
Sospetto che la larghezza sia nelle coordinate di visualizzazione, le larghezze sono solo la differenza tra due punti, quindi se puoi fare le coordinate, puoi fare larghezze. La scatola è centrata dove la metti, hai solo bisogno di afferrare la trasformazione che vuoi (vengono imballati con i loro inversi). – tacaswell