У меня есть приложение, которое в основном представляет собой календарь, пользователи могут вводить события на каждый день. Теперь мне нужно найти лучший способ показать календарь на целый месяц, выделяя при этом самые загруженные дни.
Очевидно, что здесь выбор цвета, но мне интересно, как вы, ребята, это сделаете. Я мозговой штурм следующее:
- Получите
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 событий, будут отображаться только два цвета.
Я не статик, но я думаю, что эту проблему можно решить с помощью процентилей и квартилей, но я не совсем уверен, как это реализовать.
Спасибо.