2016-08-01 100 views
0

數據框有許多連續的數字列(例如gr)和樣本標識符wellseq。每個wellseq有許多行數據。在數據框架中 - 10227行有94個不同級別的wellseq。從數據幀報頭上行是:R ggplot中堆積的直方圖100 +定性顏色

gr wellseq 
1 27.7049  1 
2 31.1149  1 
3 34.5249  1 
4 39.7249  1 
5 44.9249  1 
6 50.1299  1 

gr柱的概要是如下:

summary(GR) 
     gr    
Min. :-6.94  
1st Qu.:10.71 
Median :13.76 
Mean :18.99 
3rd Qu.:20.70 
Max. :98.42 
NA's :55 

基本爲gr整個數據的適當創建直方圖。爲了進一步分析,需要確定每個wellseq在直方圖中的貢獻。所使用的ggplot()腳本是:

p2 <- ggplot() + theme_bw() + 
     geom_histogram(data=GR, na.rm= TRUE, mapping = aes(x=gr, fill=factor(GR$wellseq)), 
      bins = 10) + scale_color_brewer(palette = "Dark2") + 
     scale_x_continuous(limits = c(-10, 100)) + 
     labs(title=paste("Gamma Ray","Histogram", sep=" ")) + 
     theme(legend.position = "none") 

Sequential Color in Histogram 所得輸出具有顏色 - 這是「連續」,而不是「質」調色板「深色2」。我嘗試使用「如何在R中生成一些最獨特的顏色?」中的答案。 @ stackoverflow.com並創建所需的顏色。

Dcolor = grDevices::colors()[grep('gr(a|e)y', grDevices::colors(), invert = T)] 
DcolorR <- sample(Dcolor, 433, replace = F) 

使用scale_colour_manual(values = DcolorR)

給出了同樣的直方圖。對於y使用..count..,直方圖確實顯示了不同的wellseq的邊界,但未按需填充。

p3 <- ggplot() + theme_bw() + 
    geom_histogram(data=GR, na.rm= TRUE, mapping = aes(x=gr, y= ..count.., col = factor(GR$wellseq), bins = 10)) + 
    scale_colour_manual(values = DcolorR) + 
    scale_x_continuous(limits = c(-10, 100)) + 
    labs(title=paste("Gamma Ray"," Frequency Histogram", sep=" ")) + 
    theme(legend.position = "none") 
fill = 1 # leads to blue colored staked histogram 

..count.. creates discrete boundaries in the bars. Fill is single color 我試圖得到一個情節就像連接。請指導。提前致謝。

Desired Output

+3

你需要使用'補=''不山坳='控制填充顏色。然後將'scale_color_manual'改爲'scale_fill_manual'.Also,請參閱[如何製作一個很好的R可重現示例](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible -例)。 – C8H10N4O2

回答