2013-11-27 2 views
0

Все примеры, которые я видел в галерее d3 в уже подсчитывали данные, такие как:Как лучше работать с необработанными данными в d3.js?

 
letter frequency 
A  .08167 
B  .01492 
C  .02782 
D  .04253 
... 

Что делать, если у меня есть 'сырые' данные, такие как:

 
A 
A 
B 
A 
D 
... 

Где мне еще нужно вычислить частоту, чтобы я мог ее нарисовать. Каков наилучший способ сделать это?
Должен ли я получить данные в файл d3.map или d3.set? Какой-то d3.nest и rollup? Или просто JavaScript?

В моем конкретном случае мне нужно наметить классы учащихся. У меня будут другие данные, кроме самого класса (например, имя студента), и у меня будут оценки, такие как 8.58.7, что мне нужно наметить «как есть» и округлить в одной диаграмме.
Нужно ли мне даже заботиться об эффективности (быть клиентом на стороне вычислений)? У меня может быть до 100000 строк данных или всего 30 или 4 строки.

ответ

1

Для этого можно использовать histogram layout. См. Пример here.

+0

Макет гистограммы оказался именно тем, что мне нужно. Он берет мои данные и сортирует их в ящики в соответствии с моей спецификацией (количество ящиков, как разделить и т. Д.). Я думаю, что это наиболее гибкое решение, однако я впервые наткнулся на макет гистограммы с небольшими проблемами с презентацией. Я закончил использовать другое решение в течение некоторого времени (пока я не понял лучше макет гистограммы): 'var valuesHash = d3.nest(). Key (function (d) {return d.grade;}). Записи (данные);' и постройте его с помощью 'x (d.key)' и 'y (d.values.length)' –

Смежные вопросы