You are here: Foswiki>Tasks Web>Item2486 (10 Dec 2009, MichaelDaum)Edit Attach

Item2486: LogarithmicTagCloud

pencil
Priority: Enhancement
Current State: Closed
Released In:
Target Release: n/a
Applies To: Extension
Component: TagCloudPlugin
Branches:
Reported By: DanielOderbolz
Waiting For:
Last Change By: MichaelDaum
The current implementation of the TagCloudPlugin seems to use a linear approach to bin the data. If some words have many hits and other have very few, one can no longer tell the differences between the low-frequency entries.

I propose that the TagCloudPlugin takes the logarithm of each count before binning (or at least to offer this as an option).

-- DanielOderbolz - 09 Dec 2009

Cool idea. Go for it.

-- MichaelDaum - 09 Dec 2009

OK, I implemented this, we tested it against 1.0.7, but we did not test for side-effects. Here is the Patch to implement this functionality.

If you have this code

%TAGCLOUD{"Lorem ipsum dolor ipsum dolor ipsum dolor ipsum dolor ipsum dolor ipsum dolor ipsum dolor ipsum dolor ipsum dolor ipsum dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor"
  header="<div style=\"text-align:center; padding:15px;line-height:180%\">"
  format="<span style=\"font-size:$weightpx;line-height:90%\"><a style=\"color:$fadeRGB(104,144,184,0,102,255);text-decoration:none\" title=\"$count\">$term</a></span>"
  footer="</div>"
  buckets="40"
  offset="0"
  lowercase="on"
  stopwords="on"
  plural="off"
  min="0"
  map="bucket=pail"
  filter="on"
  method="logarithmic"
}% 

%TAGCLOUD{"Lorem ipsum dolor ipsum dolor ipsum dolor ipsum dolor ipsum dolor ipsum dolor ipsum dolor ipsum dolor ipsum dolor ipsum dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor dolor"
  header="<div style=\"text-align:center; padding:15px;line-height:180%\">"
  format="<span style=\"font-size:$weightpx;line-height:90%\"><a style=\"color:$fadeRGB(104,144,184,0,102,255);text-decoration:none\" title=\"$count\">$term</a></span>"
  footer="</div>"
  buckets="40"
  offset="0"
  lowercase="on"
  stopwords="on"
  plural="off"
  min="0"
  map="bucket=pail"
  filter="on"
  method="linear"
}% 

you get: LogTagCloud.png

It is clear that in the linear case, all these "dolor" dominate the picture, while in the log scale you see more structure.

-- DanielOderbolz - 10 Dec 2009

I renamed method to normalize and made logarithmic normalization default ... because thats superior obviously smile

-- MichaelDaum - 10 Dec 2009

Released as v2.20.

-- MichaelDaum - 10 Dec 2009

Ah, we need to keep the original counts to display them in the tooltip appropriately.

-- MichaelDaum - 10 Dec 2009
I Attachment Action Size Date Who Comment
Core.pm.patchpatch Core.pm.patch manage 1 K 10 Dec 2009 - 11:06 DanielOderbolz Patch to implement this functionality
LogTagCloud.pngpng LogTagCloud.png manage 3 K 10 Dec 2009 - 11:08 DanielOderbolz Illustration of the effect of this change
Topic revision: r10 - 10 Dec 2009, MichaelDaum
The copyright of the content on this website is held by the contributing authors, except where stated elsewhere. See Copyright Statement. Creative Commons License    Legal Imprint    Privacy Policy