2

考虑以下向量:

vec <- c(-0.137042293280008 ,-0.0085530023889108 ,7.696986350237e-05 ,9.85275557252565e-05 ,0.000246261331270769 ,-0.0013658222244989 ,0.00117046787783182 ,-0.000423648394606887 ,-0.000112607126438433 ,0.00212185051472275 ,-0.000110104526782098)
names(vec) <- paste("var", 1:length(vec), sep = " ")

我想在 R 中vec使用 a进行绘图bar plot。但是,如您所见,与向量的其余部分相比,有一个或两个值是极端的。绘制条形图时,小值几乎不会显示在图表上。

par(xaxs='i',yaxs='i', mai = c(0.5,2,0.5,1.5))
bp2 <- barplot(vec, horiz = TRUE, col = "lightblue4", border = "lightblue4", yaxt = 'n', cex.axis = 0.7)
axis(2, at = bp2, labels = names(vec), tick = FALSE, las = 2, cex.axis = 0.7)

在此处输入图像描述

有没有办法更好地显示图表?例如,有没有办法最终拆分 x 轴?下图是一个(不相关的)示例,但它显示了在这种情况下如何拆分 y 轴以允许所有值显示在图表上。

PS:在我的情况下,使用对数比例绘制不是一个选项,因为一些向量值是负数。

在此处输入图像描述

谢谢!

4

1 回答 1

2

你需要gap.barplot从 plotrix 包。看看这个:

library(plotrix)
gap.barplot(vec,gap=c(-0.12,-0.04),xlab="Index",ytics=c(-0.04,-0.02,0),
            ylab="",main="Barplot with gap", horiz=TRUE)

修改gapytics论证以获得您的情节所需的美学。

在此处输入图像描述

于 2013-11-12T15:12:23.700 回答