11

参照フレームがプロットされた画像全体であるggplotのgeom_pointのxy座標を取得するにはどうすればよいですか?

以下を使用して、いくつかの geom_point でggplot作成できます。

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")

これは与える:

ここに画像の説明を入力

これをgrobに変換することで、紫色の矢印でマークされたプロット パネルに関する座標など、この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

緑の矢印でマークされた画像全体の左下隅から測定を開始するときに、 xy座標の値を取得するにはどうすればよいですか?

可能であれば、ソリューションでggplotのテーマを考慮したいと思います。のようなテーマを追加すると、軸に影響し、プロットされたイメージ全体に対して点の位置もシフトします。+ theme_void()

更新:プロットの幅と高さに応じて軸のフォントサイズが変化し、プロットパネルの相対的なサイズに影響することに気付きました。したがって、プロットのプロットの高さを定義せずにnpc単位で場所を提供することは簡単ではありません。可能であれば、プロット幅プロット高さの関数としてgeom_pointsの位置を指定します。

4

1 に答える 1