[英]How to remove borders from the legend without removing borders from the bar plot in 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.