1

我有来自两个样本的数据,我想在 R 中绘制频率分布图。我在 Excel 中完成了参考:

想在 R 中得到什么(用 excel 获得)

我在 R 中上传了数据(HistSerp)。是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)等,但我无法达到我的预期,我得到的和以前一样。我想我的数据有问题,但我不知道是什么。任何帮助将不胜感激。

谢谢

附言。我应该复制数据(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
4

1 回答 1

3

你有几个选择:

geom_freqpoly(aes(y = ..count.. / sum(..count..)))

这可能是你想要的。然后是:

geom_freqpoly(aes(y = ..ndensity..))

这是密度估计,但按比例缩放到从 0 到 1 的范围内。(即,它总是在 0 到 1 的范围内)。最后,相关的:

geom_freqpoly(aes(y = ..ncount..))

这是相似的,但计数。您可以在 阅读有关选项的信息?stat_bin

于 2013-05-24T14:37:23.370 回答