R-条形图|如何控制条形的空间和宽度

R-条形图|如何控制条形的空间和宽度,r,graph,R,Graph,我希望这些条彼此靠近,但不是相邻的(next=FALSE),我还希望这些条稍微薄一点。我一直在玩弄空格和宽度,但没有得到我想要的结果。 我更喜欢使用barplot函数,而不是使用ggplots,但如果没有办法,也可以 这是预期的条形图(根据获得的数据手动编辑): 这是得到的结果: 使用的代码: jpeg("03.Annotation.Distribution.DMRs.All.jpeg") bp1 = barplot(ann[,1:2], ylim=c(0,1.1), col=ann[,3]

我希望这些条彼此靠近,但不是相邻的
(next=FALSE)
,我还希望这些条稍微薄一点。我一直在玩弄
空格
宽度
,但没有得到我想要的结果。 我更喜欢使用barplot函数,而不是使用ggplots,但如果没有办法,也可以

这是预期的条形图(根据获得的数据手动编辑):

这是得到的结果:

使用的代码:

jpeg("03.Annotation.Distribution.DMRs.All.jpeg")
bp1 = barplot(ann[,1:2], ylim=c(0,1.1), col=ann[,3], beside=FALSE, space=10, 
              names.arg=c("Genome","DMRs"), las=3, xlab="Group", ylab="Frequency", 
              main="Annotation distribution on DMRs")
legend("top",legend=rownames(ann)[7:1], fill=ann[7:1,3], bty="n", horiz=FALSE)
dev.off()

谢谢

条的宽度与您使用的设备的大小有关。你可以根据你的数据设置一个新的绘图窗口并添加到其中,即使
xlim
大于你所需的值,从而调整间距

jpeg('./tmp.jpg', width = 250, height = 480, bg = 'grey90')
plot.new()
plot.window(c(0,6), c(0,1))
with(mtcars,
     barplot(prop.table(table(gear, vs), 2), col = 1:3, add = TRUE,
             legend.text = unique(gear), xlab = 'vs'))
dev.off()