Як я можу отримати координати x , y гео-точки в ggplot , де опорний кадр - це все накреслене зображення?
Я можу створити ggplot за допомогою деяких geom_point , використовуючи:
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")
Це дає:
Перетворюючи це в могилу , я можу отримати деяку додаткову інформацію про цей ggplot , як координати стосовно панелі сюжету, позначеної фіолетовою стрілкою. Однак це ігнорує простір, зайнятий осями.
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
Як я можу отримати значення координат x , y, коли починаю вимірювати з лівого нижнього кута всього зображення, позначеного зеленою стрілкою?
Якщо це можливо, я хотів би рішення , щоб прийняти до уваги тему про ggplot . Додавання теми на зразок + theme_void()
впливає на осі, а також змінює розташування точок відносно всього накресленого зображення.
Оновлення : я зрозумів, що розмір шрифту осей змінюється залежно від ширини та висоти ділянки, впливаючи на відносний розмір панелі ділянки . Тож не буде тривіальним вказати розташування в npc- одиницях, не визначаючи ширину ділянки та висоту ділянки . Якщо можливо, вкажіть розташування гео-точок як функцію від ширини ділянки та висоти ділянки .