2013-01-13 15 views
7

Proszę, pomóżcie mi z tym punktem. Potrzebuję wartości dodatnich, aby były reprezentowane jako małe punkty, a ujemne jako duże punkty. Jeśli taśmę pomniejszam przed rozmiarem, rozmiary punktów są poprawne, ale legenda się zmienia:Jak zmienić wielkość liter w ggplot?

df=data.frame(x=rnorm(20),y=runif(20),z=rnorm(20)) 
ggplot(df,aes(x=x,y=y))+geom_point(aes(size=-z)) 

tak, że nie jest pakietem.

+0

try 'last_plot() + scale_size (zakres = c (5,1)) + prowadnice (size = guide_legend (reverse = true)) ' – baptiste

Odpowiedz

10

Jednym z rozwiązań byłoby użycie scale_size() i ustawienie własnego breaks, a następnie labels w przeciwnym kierunku. Zmieniono zakres wartości z, aby uzyskać lepszą reprezentację.

df=data.frame(x=rnorm(20),y=runif(20),z=(-13:6)) 
ggplot(df,aes(x=x,y=y))+geom_point(aes(size=-z))+ 
    scale_size("New legend",breaks=c(-10,-5,0,5,10),labels=c(10,5,0,-5,-10)) 

enter image description here

+0

Wielkie dzięki! Właśnie tego chcę. –

Powiązane problemy