Простой способ узнать, сколько размеров Crossfilter существует в настоящее время?

78
12

У меня много динамических представлений и динамически созданных размеров Crossfilter. Я часто превышаю предел 32. Поэтому я избавляюсь от них по мере создания новых, но на самом деле их сложно отслеживать. Во время разработки было бы полезно получить список всех величин crossfilter или, по крайней мере, их количества.

(Чтобы быть ясным, я не спрашиваю о количестве записей, crossfilter.size())

благодарю!

спросил(а) 2021-01-25T19:40:24+03:00 4 месяца, 3 недели назад
1
Решение
99

Хорошие предложения. Я по сути делал это, и он хорошо работал.

Чтобы показать общее количество измерений:

_.size(measureDimensions)

Но что более важно, консолидация их в объекте позволила мне легко справиться и избавиться от них:

var measureDimensions = {};
var measureGroups = {};
var measureCharts = {};

function generateCharts(entities) {
_.each(entities, function(entity){
// attach the charts to the following elements:
$('.js-measures-container').append('<div class="aligned-barchart" id="dc-'+entity'">')

// create dimensions and groups
measureDimensions[entity] = xf.dimension(function(d){ return d[entity] });
measureGroups[entity] = measureDimensions[entity].group().reduceCount();

// output the number of dimensions:
console.log('total dimensions: ', _.size(measureDimensions))

// generate chart
measureCharts[entity] = dc.barChart('#dc-'+entity)
.width(_.span(10))
.height(40)
.dimension(measureDimensions[entity])
.group(measureGroups[entity])
// etc...
})
};

// Code called by event handler that requires dimensions to be disposed:
function cleanup() {
_.each(measureDimensions, function(dim){ dim.dispose() });
_.each(measureGroups, function(group){ group.dispose() });
measureDimensions = {};
measureGroups = {};
measureCharts = {};
};

(Я использую Underscore, но все это можно сделать с помощью vanilla JS)

ответил(а) 2021-01-25T19:40:24+03:00 4 месяца, 3 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема