不是很清楚你为啥要留空,柱子之间的位子可以通过调整geom_bar的width来实现,不知道是不是你想要的?
library(ggplot2)
tre <- c('CK0','CK0',' ','L0','L0',' ','H0','H0')
arg <- c('sul1','sul2','sul1','sul2','sul1','sul2','sul1','sul2')
gene <- c(9.15E-03,1.33E-03,0.00E+00,1.67E-02,2.63E-03,0.00E+00,1.27E-02,1.80E-03)
my_data <- data.frame(tre,arg,gene)
my_data$tre <- factor(as.integer(rownames(my_data)),labels = my_data$tre)
ggplot(data = my_data,aes(x=tre,y=gene,fill=arg))+
geom_bar(stat = 'identity',position = 'stack', width = .3)
<sup>Created on 2020-11-06 by the reprex package (v0.3.0)</sup>