Come posso ottenere le coordinate x , y di un geom_point in un ggplot , dove la cornice di riferimento è l'intera immagine tracciata?
Posso creare un ggplot con alcuni geom_point usando:
library(ggplot2)
my.plot <- ggplot(data.frame(x = c(0, 0.456, 1), y = c(0, 0.123, 1))) +
geom_point(aes(x, y), color = "red")
Questo da:
Convertendo questo in un grob , posso estrarre alcune informazioni aggiuntive su questo ggplot , come le coordinate rispetto al pannello della trama, contrassegnato dalla freccia viola. Tuttavia, questo ignora lo spazio occupato dagli assi.
my.grob <- ggplotGrob(my.plot)
my.grob$grobs[[6]]$children[[3]]$x
# [1] 0.0454545454545455native 0.46native 0.954545454545454native
my.grob$grobs[[6]]$children[[3]]$y
# [1] 0.0454545454545455native 0.157272727272727native 0.954545454545454native
Come posso ottenere i valori delle coordinate x , y quando inizio a misurare dall'angolo in basso a sinistra dell'intera immagine, contrassegnato dalla freccia verde?
Se è possibile, vorrei che la soluzione prendesse in considerazione il tema di ggplot . L'aggiunta di un tema come + theme_void()
influisce sugli assi e sposta anche la posizione dei punti rispetto all'intera immagine tracciata.
Aggiornamento : mi sono reso conto che la dimensione del carattere degli assi cambia a seconda della larghezza e dell'altezza della trama, influenzando la dimensione relativa del pannello della trama . Quindi non sarà banale fornire la posizione in unità npc senza definire la larghezza e l' altezza della trama . Se possibile, indicare la posizione dei geom_points in funzione della larghezza e dell'altezza della trama .