我有一个大约1000个浮点数的数组,全部介于0和1之间。我想在条形图中显示它们,其中最高的10个值明显突出。
问题是我的数据似乎是正态分布的,即有很多0.999943和0.99902的值。因此,如果我绘制所有值,您将无法清楚地看到前10位。
我可以通过什么样的函数传递数组值,以夸大范围较高端的方差?
答案 0 :(得分:1)
自0 < Your data < 1
以来,使用Math.log10计算数据的10位对数怎么样?
例如Math.log10(0.999943) = -0.000024755491006670377
Math.log10(0.99902 ) = -0.00042581727682710913
,如果您愿意,可以将结果与100000
复用,得到结果-2.4
和-42
,方差被夸大了,它们之间的关系没有改变,因为log10
是单调递增函数。
答案 1 :(得分:0)
对于任何具有累积分布函数F(x)的连续随机变量X,用F(x)变换观测值使得它们在0和1之间均匀分布。以略微概念上不同的方式表达相同的想法,提出p值而不是原始观察来突出极值。
这样做的好处是,如果转换后的值超过0.95,您可以直接说明该观察值位于分布的前5%。