Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在条形图之间打断,R柱状图_R_Histogram - Fatal编程技术网

在条形图之间打断,R柱状图

在条形图之间打断,R柱状图,r,histogram,R,Histogram,数据: varx代码可以工作,但需要较小的数字: a <- c(2.6667 ,4.45238 ,5.80952 ,3.09524 ,3.52381 ,4.04762 ,4.53488 ,3.80952 ,5.7619 ,3.42857 ,4.57143 ,6.04762 ,4.02381 ,5.47619 ,4.09524 ,6.18182 ,4.85714 ,4.52381 ,5.61905 ,4.90476 ,4.42857 ,5.31818 ,2.47619 ,5 ,2.78571

数据:


varx代码可以工作,但需要较小的数字:

a <- c(2.6667
,4.45238
,5.80952
,3.09524
,3.52381
,4.04762
,4.53488
,3.80952
,5.7619
,3.42857
,4.57143
,6.04762
,4.02381
,5.47619
,4.09524
,6.18182
,4.85714
,4.52381
,5.61905
,4.90476
,4.42857
,5.31818
,2.47619
,5
,2.78571
,4.61905
,3.71429
,2.47619
,4.33333
,4.80952
,6.52381
,5.06349
,4.06977
,5.2381
,5.90476
,4.04762
,3.95238
,2.42857
,4.38333
,4.225
,3.96667
,3.875
,3.375
,4.18333
,5.45
,4.45
,3.76667
,4.975
,2.2
,5.53846
,6.1
,5.9
,4.25
,5.7
,3.475
,3.5
,4
,4.38333
,3.81667
,3.9661
,1.2332
,1.2443
,5.4323
,2.324
,1.342
,1.321
,3.81667
,3.9661
,1.2332
,1.2443
,5.4323
,2.324
,1.342
,1.321
,4.32
,6.43
,6.98
,4.321
,3.253
,2.123
,1.234)

varx通常这是一个坏主意-直方图显示数据的连续性,而间隙破坏了这一点。您可以使用具有较小间距的上一个代码(您的值与上一个间距相符):

但这不是一个普遍的解决方案-任何接近截止值0.05的值都将在间隙区域结束

我们可以使用
ggplot2
绘制带系数数据的条形图,具体取决于您希望对值进行舍入的方式。在本例中,我选择了下限(四舍五入到最接近的整数),并四舍五入到最接近的整数:

hist(varx,breaks=rep(1:7,each=2)+c(-.05,.05))
库(ggplot2)

varx是的,这就是为什么我提到代码在这种情况下也可以工作,但在中断时需要更小的数字。
varx <-  c(1.234, 1.32, 1.54, 2.1 , 2.76, 3.2, 4.56, 5.123, 6.1, 6.9)


hist(varx, breaks=rep(1:7,each=2)+c(-.04,.04), freq=T)
hist(varx,breaks=rep(1:7,each=2)+c(-.05,.05))
library(ggplot2)
varx <- as.data.frame(varx)
varx$floor <- floor(varx$varx)
varx$round <- round(varx$varx)
ggplot(varx, aes(x = as.factor(floor))) + geom_bar()
ggplot(varx, aes(x = as.factor(round))) + geom_bar()