繁体   English   中英

R,该参数很适合使用“图”构建信息性直方图来获得非均匀bin

[英]R which argument fits well to obtain nonuniform bins using “plot” to build an informative histogram

我是R的新手,我正尝试绘制海量数据的累积频率直方图(非均匀区间)(几百万个正数,最小值为“ 1”,最大值因数据而异,例如实例1 * 10 ^ 6或1 * 10 ^ 5)。我使用此简单代码生成了数据的直方图。

例如:-样本数据

[89601]     10      2      2      4      3     12      3     25     25      2
[89611]      5      5      5      2     23     22     14      8     13     10
[89621]     13     19    157      2      3      2      4      2      3     33
[89631]     22      2     14      9      2      3      3      3      8      2
[89641]      8      3      2    127      8      2     18      2      4      2
[89651]      2     13      3     34      8      2      6     10      3      7
[89661]      3      9      7      3     36      9      5      2     10     15
[89671]      7      2     23      2      2      2      2      7      6     25
[89681]      3      3      2      6     37     49     28     11      3     35
[89691]      2      2      8      3      3      2      2      4      3     12
[89701]      3      5      2      7      3      2     15      6      3     14
[89711]     13      5      3      2      2      8     34      4      4     65
[89721]      5      9     12      2     11      2      2     79      9     13
[89731]      2     66      2      9     10     22     11      2      6      3
[89741]     12      2     11      5      4      4      2      4      3      4
[89751]      2      8      9      3      2      2     84      7     11     10
[89761]      8     30     16      3     63      2      2     24     13      2
[89771]     11     37      2      9     21     21     10      2      2     49
[89781]      3      3      8      5      2     19      9      6      5      4
[89791]      4      2      9      2     10     33      5      4      2      2
[89801]      4      2      2      4      9      3     11      2      5    142
[89811]     17      2     11      4      2      8     26      2      9      8
[89821]     10      2      4      2      5      2     20      7    145     11
[89831]     22     19      8     14     18     39      3      2      3      3
[89841]      2     11     10      3      2      3      3      5      6     12
[89851]     17      5      3      8      2      2      2      2      2      5
[89861]      4      2     13      3      2      2      2      2      3      2
[89871]      4      3     21      2      6      2      8      9      7     14
[89881]      2    582      3     15     11      3     20     16      9      8
[89891]      6      2      6      7      3     20     17      2      9      5
[89901]      5     11      2     12      7      2     46      2    144      9
[89911]      2      3     36     25      3      2     16      2      2    119
[89921]      5      5     10      6      2      2      6     84     13      2
[89931]      2      6      6      2     17      3      7      4    102     48

data <- read.table("sample.txt", header=FALSE)
data <- hist(data$V1, breaks=length(data$V1), xlim=c(0,4000000))
plot(data)

当我这样做时,我可以获得所有数据(正数)在x轴上并在y轴上计数的直方图。然后再次将x的限制仅更改为感兴趣的区域

plot(data, xlim=c(0,200000))

就像在绘制直方图之前一样,但是使用“图”时,我无法定义垃圾箱的数量,因此直方图不清晰(不像我想要的条形图)而且内容丰富。

由于我是这个论坛的新手,所以我不知道如何上传图像,因此我无法提供直方图。

任何建议将非常有帮助。

为了绘制直方图,您可以使用hist()函数:

    hist(data$V1, xlim=c(0,200000), breaks=100)

breaks参数显示将绘制多少条。 但是此数字与所有绘图有关,与您指定的xlim无关。 因此,首先,它将以给定的中断次数生成直方图,然后将其剪切为所需的部分图。

但是还有另一种绘制条形图的方法:

    data <- read.table("sample.txt", header=FALSE)
    data.hist <- hist(data$V1, breaks=length(data$V1), xlim=c(0,4000000))
    plot(data.hist$counts, type='h')

hist函数返回一个代表直方图参数的对象。 我想,您对“计数”字段感兴趣。 您可以通过定义type ='h'以类似直方图的方式绘制此信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM