2017-02-27 7 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