规范严重倾斜的数字数组?

时间:2014-06-21 14:11:27

标签: normalize

我从Web服务中获取了一系列主题标签,我正在使用它来构建标签云。我的问题是为标签分配字体权重,因为与其余标签相比,最受欢迎的标签非常受欢迎。我得到这样的东西:

总人数:17000 tag1计数15000 tag2计数800 tag3 count 150

如果我按百分比分配大小,我会得到一个巨大的字体和一堆最小值字体。这是真正的规模,但它看起来不正确。如果我均匀地分配字体大小 - 只需将最大字体大小除以标签数量,那么我就不会得到真正显示标签流行度的差异。

寻找一种快乐的媒介,我可以很容易地看到tag1的受欢迎程度,但其余的都不会太小甚至看不到。

希望这是有道理的。

2 个答案:

答案 0 :(得分:0)

您可以尝试将每个值除以100.这样可以显示大小差异,但可能会让您的差异程度较低。

答案 1 :(得分:0)

使用log(count)应该完成这项工作。当输入增加一个数量级时,值的对数将增加1。这意味着如果使用与基数10的对数,则log(100)= 2,log(1000)= 3,log(1000000)= 6等。

另一种表达方式是对数是指数的反函数。

但是汗可能比我更好地解释它:) https://www.khanacademy.org/math/algebra2/logarithms-tutorial/logarithmic-scale-patterns/v/logarithmic-scale