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