5

同じX座標とY座標を持つポイントの数を表すポイントのサイズでggplotの散布図を作成する関数を書いています。

私は機能する機能を持っています:

require(dplyr)
plot_size_bubbles <- function(x,y) {
  dd = data.frame(x,y) %>%
    group_by(x,y) %>%
    summarise(n=n()) %>%
    ungroup()
  ggplot(dd, aes(x,y)) + geom_point(aes(size=n))
}

X = sample(1:3,10,replace = T)
Y = sample(1:3,10,replace = T)
plot_size_bubbles(X,Y)

geom_point から継承したカスタム ジオメトリ関数として、ggplot のスタイルで作成したいと考えています。統計関数を使用できるかもしれませんが、わかりません。基本的に、データ フレームを ggplot に渡し、x と y をマップし、ポイント サイズを事前に計算せずにこのプロットを作成したいと思います。お気に入り

ggplot(data.frame(X,Y), aes(X,Y)) + geom_sizebubble()

さらに、元のデータ フレームから x 軸と y 軸のラベルを取得できると便利です。

それが可能であることを願っています。何かが足りないだけです。

4

1 に答える 1