2013-11-22 10 views
22

Powiedzmy mam wiele wartości około 0,1 i kilka około 10. Mam odwzorowane nich czyli z:określaniu minimalnego rozmiaru sensu ggplot2 - geom_point

geom_point(aes(size=value)) 

..which daje mi zdjęcie takie jak to: enter image description here

Trudno jest zobaczyć bardzo małe punkty. Zastanawiałem się, czy mogę ustawić ramkę skalowania dla rozmiarów kropek. Z:

scale_size_area(max_size=8) 

Mogę ustawić maksymalny rozmiar, ale nie rozmiar min. Mogę log10 moich danych, w wyniku czego prawie nie ma różnicy wielkości punktu. Byłoby idealnie zdefiniować minimalny rozmiar i maksimum pomijając określoną dystrybucję (jak to jest możliwe na przykład w przypadku scale_colour_gradient).

Odpowiedz

39

Jeśli spojrzeć w ?scale_size zobaczysz range argument:

df <- data.frame(x = 1:10,y = runif(10),sz = c(rep(1,8),10,10)) 

ggplot(df,aes(x = x,y = y,size = sz)) + 
    geom_point() + 
    scale_size_continuous(range = c(2,4)) 
Powiązane problemy