Autor | Zpráva | ||
---|---|---|---|
mzk Profil * |
#1 · Zasláno: 13. 5. 2007, 16:39:31
Potřeboval bych udělat něco jako exponenciální funkci.
Mám tabulku, kde je: nazev | pocet aaa | 1 ccc | 22 ddd | 111 aa | 444 asdf | 2 A tvořím něco jako tagy, kde slovo $nazev bude tak velký, jak bude velký $pocet. Jenom že je blbost udělat <span size=$pocet>$nazev</span> protože to by byl moc velký nepoměr mězi 1 a 444. Takže by to chtělo malé hodnoty zvěšovat a velkmé zmenšovat, aby se usekali výchylky. Napadá mě toto
Ale určitě by to šlo i nějak lépe ne? Násobit to nějakým keefiientem aby se hodnoty držely mezi 8 až 30.. |
||
nightfish Profil |
#2 · Zasláno: 13. 5. 2007, 17:23:12
já bych na to použil nějakou funkci založenou na logaritmu...
|
||
YoSarin Profil |
#3 · Zasláno: 13. 5. 2007, 17:46:09 · Upravil/a: YoSarin
nightfish
Buď takhle, anebo si hlídat aby největší tag měl velikost 30 a nejmenší třeba 9: $size = 9 + ($pocet/$maxPocet)*21; Kde $pocet je počet aktuálního tagu a $maxPocet je počet nejčastějšího tagu. |
||
czechport Profil |
#4 · Zasláno: 13. 5. 2007, 17:48:52
já bych na to šel přes procenta
našel bych si největší číslo v tabulce a uložil jako $max_pocet No a pak $cislo = $cislo*100/$max_pocet výsledek zaokrouhli a máš číslo od 1 do 100. Pokud chceš ještě menší vyděl např. čtyřmi a máš číslo od 1 do 25ti atd. |
||
mzk Profil * |
#5 · Zasláno: 14. 5. 2007, 14:14:36
Díky všem. Zkusil jsem všechny 3 způsoby, nejlepší se mi zdál asi ten logaritmus + zaokrouhlování směrem nahoru.
|
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0