簡體   English   中英

ggplot2:刪除顏色並在條形圖中繪制邊框

[英]ggplot2: remove colour and draw borders in bar plot

我目前正在使用ggplot2繪制填充過多級別的條形圖。 結果,我無法確定一個酒吧何時結束,另一個何時開始。

這是我目前正在執行的示例數據代碼。

variable<-c("X1","X1","X1","X1","X1","X1","X1","X1","X1","X2","X2","X2","X2","X2","X2","X2","X2","X2","X3","X3","X3","X3","X3","X3","X3","X3","X3")
Length.1<-c(4.24,0.81,0.81,NA,NA,NA,NA,NA,NA,4.24,0.81,0.81,NA,NA,NA,NA,NA,NA,4.24,0.72,0.72,0.16,NA,NA,NA,NA,NA)
data<-data.frame(variable=as.factor(variable),value=as.factor(1:length(variable)),Length.1=Length.1)

## Plots a stacked bar chat in ggplot2 with text labels. Credit to MYaseen208
library(ggplot2)
p <- qplot(variable, Length.1, data = data, geom = "bar", fill = value,     theme_set(theme_bw()))
p + geom_text(aes(label = Length.1), size = 3, hjust = 0.5, vjust = 3, position =     "stack") 

目前,該情節看起來不錯。 但是,在我的實際數據集中, length(data$value)高得多,而且我看不出不同條形之間的差異。 因此,我希望將條形的顏色更改為白色,並在每個條形周圍繪制一個黑色邊框。 有誰知道我該怎么做?

我將使用ggplot函數而不是qplot 然后,您可以設置顏色並手動填充:

ggplot(data,aes(x=variable, y=Length.1,group=value))+
  geom_bar(fill="white",color="black")+
  geom_text(aes(label = Length.1), size = 3, hjust = 0.5, vjust = 3, position ="stack") +
  theme_bw()
p <- ggplot(aes(variable, Length.1), data = data)+ geom_bar(stat="identity",colour="black", fill="white")+geom_text(...)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM