关于标签云中标签的缩放
-
19-09-2019 - |
解决方案
去年我参与了一个小型标签云项目,其中我使用了类似的东西
β = (int) (((maxθ – minθ) x ω) + minθ + 0.5)其中 ω 是先前根据某种度量(在您的情况下是字体频率)计算的权重,minθ 和 maxθ 是下限和上限,β 是最终值。这可以应用于任何视觉特征(字体大小、颜色、粗细(如果支持)等)。
我发现线性和对数缩放往往依赖于数据集分布。在具有突出异常值的数据集中,我发现 tanh 对于“平滑”结果值很有用。
其他提示
有一个很好的讨论 这个pdf, ,其中讨论了要显示的标签的缩放、聚类和截断。
我发现效果很好的解决方案如下
font_size = (max_font_size - min_font_size) * (Math.sin(1.5*(X)) + minsize
其中 X 是您希望映射到字体大小的标准化值
X = (this_value-min_value)/(max_value-min_value)
这会增加范围内较低 3 个四分位数的大小差异,以便最大限度地减少高异常值的影响
不隶属于 StackOverflow