5

これが私が開発しようとしているグラフです:

ここに画像の説明を入力

行と列の座標変数と、3 つの定性変数 (rectheat = 四角形のヒートマップを塗りつぶす、circlesize = 円のサイズ、circlefill = 色のヒートマップを塗りつぶす) があります。NA は、別の色 (たとえば灰色) で表される欠落している必要があります。

以下はデータです。

set.seed (1234)
rectheat = sample(c(rnorm (10, 5,1), NA, NA), 7*14, replace = T)

dataf <- data.frame (rowv = rep (1:7, 14), columnv = rep(1:14, each = 7),
          rectheat, circlesize = rectheat*1.5,
          circlefill =  rectheat*10 )
dataf

私が取り組んだコードは次のとおりです。

require(ggplot2)
ggplot(dataf, aes(y = factor(rowv),x = factor(columnv))) +
      geom_rect(aes(colour = rectheat)) +
     geom_point(aes(colour = circlefill, size =circlesize))  + theme_bw()

エラー以外の結果が得られなかったので、 geom_rect が適切で、他の部分は問題ないかどうかはわかりません。

4

1 に答える 1

13

ここではgeom_tile(ヒートマップ)を使用することをお勧めします。

require(ggplot2)
  ggplot(dataf, aes(y = factor(rowv),
             x = factor(columnv))) +        ## global aes
  geom_tile(aes(fill = rectheat)) +         ## to get the rect filled
  geom_point(aes(colour = circlefill, 
                   size =circlesize))  +    ## geom_point for circle illusion
  scale_color_gradient(low = "yellow",  
                       high = "red")+       ## color of the corresponding aes
  scale_size(range = c(1, 20))+             ## to tune the size of circles
  theme_bw()

ここに画像の説明を入力

于 2012-12-31T04:15:12.387 に答える