Bagaimana saya bisa mendapatkan koordinat x , y dari geom_point dalam ggplot , di mana kerangka referensi adalah seluruh gambar yang diplot?
Saya dapat membuat ggplot dengan beberapa geom_point menggunakan:
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")
Ini memberi:
Dengan mengonversinya menjadi grob , saya dapat mengekstrak beberapa informasi tambahan tentang ggplot ini , seperti koordinat yang berkaitan dengan panel plot, yang ditandai oleh panah ungu. Namun, ini mengabaikan ruang yang diambil oleh sumbu.
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
Bagaimana saya bisa mendapatkan nilai koordinat x , y ketika saya mulai mengukur dari sudut kiri bawah seluruh gambar, yang ditandai oleh panah hijau?
Jika mungkin, saya ingin solusi untuk memperhitungkan tema dari ggplot . Menambahkan tema seperti + theme_void()
memengaruhi sumbu dan juga menggeser lokasi titik sehubungan dengan keseluruhan gambar yang diplot.
Pembaruan : Saya menyadari bahwa ukuran font sumbu berubah tergantung pada lebar dan tinggi plot, memengaruhi ukuran relatif panel plot . Jadi tidak akan sepele untuk menyediakan lokasi dalam satuan npc tanpa menentukan lebar plot dan tinggi plot . Jika memungkinkan, berikan lokasi geom_points sebagai fungsi dari lebar plot dan tinggi plot .