2017-02-27 9 views
0

私のggplotにもっと詳細な凡例を含めたいと思います。現在の凡例はすべてのドットサイズを表すわけではありません。次の例では:ggplot2の数値凡例のレベルを上げる

df <- "Freq Obs NumberOfWindows 
     15 0.5 40 
     12 0.4 80 
     10 0.3 100 
     8 0.2 800 
     6 0.18 1300 
     3 0.1 2000 
     1 0.05 30000" 

ResA <- read.table(text=df, header=T) 


library(ggplot2) 

ggplot(ResA, aes(Freq, Obs, size=NumberOfWindows)) + 
    geom_point() + 
    xlab("Boundary frequency") + 
    ylab("Average number of overlaps per window (10kb)") + 
    ggtitle(as.character("The plot"))+ 
    theme_bw()+ 
    scale_size_continuous(name="area", range = c(1,20)) 

enter image description here

少なくとも最大しかし、私は伝説を持っているしたいと思い、私はそこに大きな食い違いがあり、私の番号は40から30000までの範囲であることに注意してくださいと最小ドット。さもなければ、凡例は小さな点にあまり役に立たないでしょう。ここのアイデアは高く評価されています。

答えて

2

はい、あなたのscale_size_continuous、このような何かの内側にブレークを追加する必要があります。

ggplot(ResA, aes(Freq, Obs, size=NumberOfWindows)) + 
    geom_point() + 
    xlab("Boundary frequency") + 
    ylab("Average number of overlaps per window (10kb)") + 
    ggtitle(as.character("The plot"))+ 
    theme_bw()+ 
    scale_size_continuous(name="area", 
         range = c(1,20), 
         breaks = ResA$NumberOfWindows) 

結果:

enter image description here

関連する問題