2016-08-05 23 views
9

Mam następujące elementy, aby wykreślić pasek danych.Zmiana koloru wykresu słupkowego w geom_bar z ggplot2 w r

c1 <- c(10, 20, 40) 
c2 <- c(3, 5, 7) 
c3 <- c(1, 1, 1) 
df <- data.frame(c1, c2, c3) 
ggplot(data=df, aes(x=c1+c2/2, y=c3)) + 
    geom_bar(stat="identity", width=c2) + 
    scale_fill_manual(values=c("#FF6666")) 

I skończyć posiadające tylko szare paski: Grey bars for bar plot

chciałbym zmienić kolor paska. Próbowałem już różnych scale_fill_manual od http://www.cookbook-r.com/Graphs/Colors_(ggplot2)/ , ale nadal mam szare paski.

Dziękuję za pomoc.

+0

Jeśli chcesz tylko zmienić ogólne kolory barów, bez różnic między barów, zapisz go bezpośrednio w 'geom_bar()': 'geom_bar (stat = "identity", width = c2, color = "# FF6666") ' – bVa

+0

Więc tym razem mam tylko kontur koloru =" # FF6666 ", wypełnienie pozostaje szare. Teraz, jeśli wstawię: 'ggplot (dane = df, aes (x = c1 + c2/2, y = c3, wypełnienie = c3)) + geom_bar (stat =" identity ", width = c2)' I wtedy mieć wypełniony niebieski kolor, ale znowu nie mogę wybierać ręcznie. – tuttifolies

+0

'geom_bar (stat =" identity ", width = c2, fill =" # FF6666 ")' dla tego samego wypełnienia dla wszystkich słupków. Użyj 'scale_fill_manual (values ​​= c (" # FF6666 "))' jeśli chcesz ustawić kolor według zmiennej (kategorii). – bVa

Odpowiedz

17

Jeśli chcesz, aby wszystkie paski miały taki sam kolor (wypełnienie), możesz z łatwością dodać je wewnątrz geom_bar.

ggplot(data=df, aes(x=c1+c2/2, y=c3)) + 
geom_bar(stat="identity", width=c2, fill = "#FF6666") 

enter image description here

Zastosowanie scale_fill_manual() jeśli chcesz ręcznie zmiana kolorów w zależności od zmiennej kategorycznego.

c4 = c("A", "B", "C") 
df = cbind(df, c4) 
ggplot(data=df, aes(x=c1+c2/2, y=c3, fill = c4)) + 
geom_bar(stat="identity", width=c2) 

enter image description here

ggplot(data=df, aes(x=c1+c2/2, y=c3, fill = c4)) + 
geom_bar(stat="identity", width=c2) + 
scale_fill_manual("legend", values = c("A" = "black", "B" = "orange", "C" = "blue")) 

enter image description here

Powiązane problemy