[英]R: weird y-axis in frequency/density plot (ggplot2)
我有两个样本的数据,我想在R中绘制频率分布图。我在Excel中完成了参考:
我在R中上传了数据(HistSerp)。 136 obs. of 2 variables
136 obs. of 2 variables
。
summary(HistSerp)
V1 V2
Min. :0.000 Min. :0.0000
1st Qu.:0.000 1st Qu.:0.3752
Median :0.000 Median :1.2845
Mean :0.055 Mean :1.2144
3rd Qu.:0.082 3rd Qu.:1.9952
Max. :1.082 Max. :2.9800
class(HistSerp$V1)
"numeric"
class(HistSerp$V2)
"numeric"
如果我HistSerp.m <- melt(HistSerp)
和ggplot(HistSerp.m) + geom_freqpoly(aes(x = value, y = ..density.., colour = variable))
该图看起来是:
我不知道为什么y轴跨越该值,并且我不确定这是否仅是y轴标注问题,该图本身似乎有所不同。 我也尝试过geom_density()
, hist(HistSerp$V1, freq=FALSE)
等等,但是我无法如我hist(HistSerp$V1, freq=FALSE)
,我和以前一样。 我想我的数据有问题,但我不知道这是什么。 任何帮助将不胜感激。
谢谢
PS。 我应该复制数据(136x2)吗?
更新:数据。 抱歉,如果有更好的复制方法...
0.144 2.024
0.082 2.548
0.082 1.943
0.000 2.599
0.000 2.233
0.000 2.342
0.082 1.655
0.082 2.200
0.000 2.261
0.000 2.408
0.000 2.127
0.000 2.053
0.000 1.929
0.000 1.413
0.000 2.400
0.000 2.777
0.000 2.685
0.000 1.436
0.000 1.573
0.000 2.504
0.000 1.533
0.000 1.434
0.000 1.421
0.000 2.534
0.082 1.728
0.000 1.984
0.082 1.287
0.000 2.324
0.164 2.405
0.279 1.989
0.082 2.729
0.144 2.046
0.226 2.496
0.000 2.980
0.000 2.634
0.000 1.792
0.000 1.571
0.000 0.612
0.000 0.884
0.000 0.449
0.000 2.318
0.082 0.449
0.000 0.449
0.000 0.563
0.082 0.919
0.000 0.617
0.082 1.297
0.144 0.719
0.000 1.897
0.000 1.338
0.000 0.337
0.000 1.555
0.000 0.273
0.291 0.656
0.000 0.273
0.082 0.388
0.082 1.911
0.082 0.852
0.000 1.580
0.000 1.450
0.000 1.209
0.000 2.049
0.082 2.694
0.082 1.089
0.246 2.643
0.000 2.393
0.000 1.702
0.000 2.595
0.000 1.432
0.000 2.094
0.000 1.526
0.082 1.775
0.000 0.273
0.000 1.405
0.000 2.014
0.000 0.543
0.000 0.586
0.000 1.224
0.000 0.719
0.164 0.201
0.000 0.388
0.082 0.232
0.000 0.116
0.000 0.116
0.082 1.395
0.000 0.116
0.000 0.232
0.082 0.844
0.000 1.153
0.082 0.000
0.667 0.000
0.000 1.535
0.000 2.687
0.000 0.922
0.226 0.337
0.197 0.999
1.082 1.373
0.082 0.396
0.082 0.116
0.000 1.667
0.000 0.731
0.000 0.544
0.082 2.072
0.000 2.262
0.164 2.111
0.082 1.675
0.000 0.116
0.000 0.232
0.082 0.116
0.000 1.004
0.000 0.116
0.164 0.116
0.082 0.699
0.000 0.000
0.000 0.273
0.082 0.000
0.000 0.388
0.082 0.000
0.000 0.116
0.000 0.273
0.000 0.000
0.000 0.649
0.164 0.000
0.082 0.000
0.082 0.000
0.000 0.000
0.082 0.000
0.144 1.282
0.000 1.772
0.000 0.116
0.082 0.000
0.000 1.416
0.000 0.563
0.082 0.510
0.000 0.316
0.164 1.124
您有两种选择:
geom_freqpoly(aes(y = ..count.. / sum(..count..)))
这可能是您想要的。 然后是:
geom_freqpoly(aes(y = ..ndensity..))
这是密度估算值,但缩放范围是0到1(即,它将始终是0到1)。 最后,相关的:
geom_freqpoly(aes(y = ..ncount..))
这很相似,但很重要。 您可以在?stat_bin
阅读有关这些选项的?stat_bin
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.