Wie man die Größe in einer Tag-Cloud ermitteln kann
Heute mal was kurzes aber hoffentlich nützliches. Heute möchte ich eine Funktion zur Größenberechnung der Tags in einer Tag-Cloud zeigen. Gibt natürlich noch jede menge andere Verfahren, beispielsweise eine lineare Größensteigerung, die mit sicherheit weniger Rechenleistung beanspruchen dürfte. Diese hier ist logarithmisch.
Die Funktion
function GetTagSizeLog( /* wie oft kommt der Tag vor */ $count, /* mindesthäufigkeit für Größenänderung */ $mincount, /* maximalhäufigkeit für Größenänderung */ $maxcount, /* kleinste Größe */ $minsize, /* größte Größe */ $maxsize ) { /* Relative Obergrenze */ $steps = $maxsize-$minsize; /* Steigerungsrate */ $delta = ($maxcount-$mincount)/$steps; /* Steigerungsschleife, die sich logarithmisch annähert */ while( log($count+2)>log($mincount+$a*$delta+2) && $a<$steps ){ ++$a; } return $minsize+$a; }
Viel zu erklären gibts da eigentlich nicht, daher sag ich einfach mal: viel spaß damit und frohes Schaffen!
Keine Kommentare