0
我試圖產生一個直方圖ggplot'
s geom_histogram
根據梯度顏色的酒吧,和log10的他們。ggplot與填充和scale_y_log10結合的奇怪行爲()
下面的代碼:
library(ggplot2)
set.seed(1)
df <- data.frame(id=paste("ID",1:1000,sep="."),val=rnorm(1000),stringsAsFactors=F)
bins <- 10
cols <- c("darkblue","darkred")
colGradient <- colorRampPalette(cols)
cut.cols <- colGradient(bins)
df$cut <- cut(df$val,bins)
df$cut <- factor(df$cut,level=unique(df$cut))
然後,
ggplot(data=df,aes_string(x="val",y="..count..+1",fill="cut"))+
geom_histogram(show.legend=FALSE)+
scale_color_manual(values=cut.cols,labels=levels(df$cut))+
scale_fill_manual(values=cut.cols,labels=levels(df$cut))+
scale_y_log10()
而來自aesthetics
丟棄fill
:
ggplot(data=df,aes_string(x="val",y="..count..+1"))+
geom_histogram(show.legend=FALSE)+
scale_color_manual(values=cut.cols,labels=levels(cuts))+
scale_fill_manual(values=cut.cols,labels=levels(cuts))+
scale_y_log10()
任何想法爲什麼直方圖條不同之間的兩個情節,並使第一個類似於第二個?
默認情況下'geom_histogram'使用'position_stack'。您可以將其更改爲'position_identity',但您可能希望將這些條形成透明。我建議使用刻面。 – Roland