2012-07-19 15 views
5

Używam R do tworzenia konkurencyjnej mapy grup strategicznych w branży, którą badam. Liczba wylotów jest wzdłuż osi X, sprzedaż jest osią Y, a także wielkością bańki. Zastosowany kod:Zmiana zakresu rozmiarów używanych na wykresie bąbelkowym

qplot(data = supermarket, x = outlets, y = sales, size = sales, color = retailer) 

Muszę jednak zwiększyć ogólny rozmiar bąbelków, ponieważ obecnie jest zbyt niejasny. Poniżej znajduje się przykład.

Graph

Co potrzebne jest, aby mieć pęcherzyki zachować ich wielkość w stosunku do sprzedaży, ale stają się większe ogólnie do zwiększenia widoczności.

+3

Dodaj to do polecenia kreślenia: '+ scale_size (range = c (4, 10))' Zmień zakres, aż będzie wyglądać prawidłowo. Więcej informacji na [http://had.co.nz/ggplot2/docs/scale_size.html](http://had.co.nz/ggplot2/docs/scale_size.html). – bdemarest

+0

@bdemarest, właśnie zauważyłem, że pobiłeś mnie do odpowiedzi tutaj. Kilka dni temu miałem to samo pytanie. –

+0

Powyższy link jest nieważny. – Phil

Odpowiedz

5

Gra z: + scale_size_continuous(range = c()) jak w:

#set.seed(10) 
#supermarket <- data.frame(sales = sample(1:50000, 12), 
# outlets = sample(1:3000, 12), retailer = LETTERS[1:12]) 

#I use ggplot rather than qplot and understand it so that's what I used here 
ggplot(data = supermarket, aes(x=outlets, y=sales, size=sales, color=retailer)) + 
      geom_point() + scale_size_continuous(range = c(3, 8)) 

Albo można po prostu wykorzystać swój kod i dodać scale_size_continuous jak bdemarest sugeruje powyżej:

qplot(data = supermarket, x = outlets, y = sales, size = sales, color = retailer) + 
    scale_size_continuous(range = c(3, 8)) 

Zarówno dadzą takie same wyniki.

+0

Niesamowite. Wielkie dzięki, to prawie doskonałe. Jednak jeśli chcę zmienić LISTY na nazwy kolumn (nazwy supermarketów), które polecenie powinienem użyć? – AlphaGPC

+0

Wykorzystaj swoje dane. To tylko litery, bo wymyśliłem dane. –

+0

Dzięki. Ale który "kod" (obiekt?) Powinienem używać zamiast LISTÓW? – AlphaGPC

Powiązane problemy