Рассчитать высоту графических столбцов гистограммы

Я не могу понять простую формулу для расчета высоты столбца в графике гистограммы.

Например, у меня есть массив данных

var data = [82, 61, 88, 245, 201, 619, 735, 1099, 1088, 1477, 1531, 1717, 1263, 1674, 1254, 1134, 718, 887, 748, 569, 485, 565, 286, 266, 298, 203, 171, 235, 128, 127, 109, 128, 76, 73, 73, 85, 44, 33, 47, 29, 38, 47, 35, 31, 16, 17, 11, 20, 20, 276]

Это список чисел (каждое число в массиве представляет количество свойств ближе к краям диапазона от 0 до 3000). Мне нужно, чтобы максимальная высота столбца составляла 30 пикселей. Какие расчеты я должен сделать?

пример результата

Я полагаю, что мой псевдокод должен выглядеть следующим образом:

var maxPropertiesNumber = Math.max.apply(null, data);
var html = list.map(column => {
   var style = {
     width: 10px,
     backgroundColor: 'grey',
     height: ...
   };
   return <div style={style}></div>
})

1 ответ

Решение
  1. Найдите максимальное значение в массиве.
  2. Вычислить: 30px / (максимальное значение) = пикселей на единицу
  3. Переберите значения и выполните вычисление: округление (значение * пиксель на единицу)
Другие вопросы по тегам