[英]Formula for popularity by day?
我有一個基本上是日歷的應用程序,用戶可以輸入每天的事件。 現在我必須找到最佳方式來顯示整個月的日歷,同時突出最忙碌的日子。
顯然顏色是這里的選擇,但我想知道你們會怎么做。 我頭腦風暴了以下幾點:
max
事件,然后從那里除以可用顏色的數量。 因此,如果有一天有30個事件,我們有3種顏色,第一個將是0到9,接下來是10到19,最后一個是20。 average
並用colors/2
除以它,所以如果平均值是10個事件並且我們有3種顏色,則數學將是10 / 1.5 = 6.66,這意味着第一個顏色范圍將是0到6.66,第二個顏色范圍是6.67至13.32和最后一次從13.33開始。 但是,我不確定這是解決這個問題的最佳方法。 兩者都是線性的,如果我們的平均值大約為20並且最大值有100個事件,則第一個可能會使事情變得非常混亂,只會出現兩種顏色。
我不是靜態的,但我認為這個問題可以用百分位數和四分位數來解決,但我不確定如何實現它。
謝謝。
我建議使用一種用於構建標簽雲的邏輯分布算法。 標簽是你的日子,標簽的數量是一天的事件數量。
PHP和Python的一個很好的實現(尚未正確檢查)似乎就是這個 。 這是一個例子:
$tags = array(
array('tag' => 1,
'count' => 10),
array('tag' => 2,
'count' => 30),
array('tag' => 3,
'count' => 5),
array('tag' => 4,
'count' => 5));
$colours = array('green', 'yellow', 'red');
foreach(tagcloud($tags, 0, count($colours) - 1, 0) as $d) {
echo '<div style="background-color:' . $colours[floor($d['size'])] . '">Day: '.$d['tag'].' Events: '.$d['count'].'</div>';
}
一些想法:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.