クロスフィルターを使用して、さまざまなデータのリストをヒストグラムにグラフ化しています。アイテムの値のいくつかは他の値よりもはるかに高く、私はヒストグラムを対数でプロットすることに熱心です。
reduceSumが呼び出された後、合計されたすべてのアイテム数を対数値に変換する方法はありますか?私は次のようなものを追加したいと思っています
Math.log(d.count) / Math.LN10;
次のように:
var crossfiltered_data = crossfilter(data),
all = crossfiltered_data.groupAll(),
item_labels = crossfiltered_data.dimension(function(d) { return d.name; }),
items_group = hour.group().reduceSum(function(d) {
return d.count
}),
charts = [
barChart(on_range_change)
.dimension(item_labels)
.group(items_group)
.x(d3.scale.linear()
.domain([domain_start, domain_end])
.rangeRound([0, 240])),
],
chart = d3.selectAll(target)
.data(charts)
.each(function(chart) {
chart .on("brush", renderAll)
.on("brushend", renderAll);
}),
render = function(method) {
d3.select(this).call(method);
},
renderAll = function(event) {
chart.each(render);
};