2013-08-15 3 views
15

У меня большой набор данных содержит 10^5 точек данных. И теперь я рассматриваю следующий вопрос, связанный с большим набором данных:D3: Как показать большой набор данных

Есть ли эффективный способ визуализации очень большого набора данных? В моем случае у меня есть пользовательский набор, и каждый пользователь имеет 10^3 элемента. Всего 10^5 предметов. Я хочу показывать все элементы для каждого пользователя за раз, чтобы обеспечить быстрое сравнение между пользователями. Некоторый орган предлагает использовать список, но я не думаю, что список является единственным выбором при работе с этим большим набором данных.

Примечание

Я хочу, чтобы показать все элементы для каждого пользователя в то время.

Это означает, что я хочу показать все точки данных, когда нажимаю на пользователя, и когда я нажимаю на два использования, я могу сравнить разницу между этими точками.

+0

Что вы подразумеваете под "эффективным"? –

+0

Эффективность времени. Когда размер данных становится огромным, рендеринг занимает довольно много времени, а динамические макеты становятся невозможными. – SolessChong

+0

Это действительно расплывчато. Что именно вы пытаетесь сделать, что вы пробовали и почему он не работает? – Anko

ответ

30

Проблема заключается не в их рендеринге. Вы можете переключиться на холст или webgl для части рендеринга. Вы можете найти несколько примеров использования canvas и X3DOM с привязкой данных D3. Но он будет медленным из-за количества объектов DOM, поэтому лучше оставить их разделенными, как в этом parallel coordinates example. В этом примере также имеется прогрессивный рендеринг для загрузки и отображения всех элементов данных.

Сохранение их в памяти и управление ими на стороне клиента тоже не проблема. D3 часто используется с Crossfilter для быстрой обработки данных «миллионов или более записей».

10^5 точек данных - это лишь немного слишком много точек для интерактивного рендеринга SVG. Но слишком много точек данных в визуализации часто являются намеком на то, что у вас неправильный уровень абстракции или неправильная стратегия построения. Много точек, вероятно, перекрываются или визуально сливаются. Итак, почему бы не заполнить эти фигуры, например, используя тепловую карту (цветная шкала для количества точек перекрытия), биннинг (гексбин, гистограмма) или суммирование набора данных?

Если вам нужен обзор и сравнение наборов данных, вам, вероятно, потребуется абстракция, например, некоторые статистические данные, обобщающие ваш набор данных, а затем детальную информацию по запросу (семантический масштаб, фокус + контекст, развертка).

+3

Это прибило его. Но слишком много точек данных в визуализации часто являются намеком на то, что у вас есть ** неправильный уровень абстракции ** или ** неправильная стратегия построения **. –

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