0
比方說我有這個數據推入crossfilter:創建結構化對象的crossfilter尺寸
[
{user: 'abby', town: 'reading', postcode: 'RG'},
{user: 'ben', town: 'reading', postcode: 'RG'},
{user: 'charlie', town: 'bristol', postcode:'BS'}
]
注意數據的扁平性質 - 郵政編碼場總是會從鎮場的映射,所以每當鎮=閱讀,郵政編碼將= RG等
我想能夠創建一個城鎮維度來源於鎮和郵政編碼字段,以便當我過濾我的用戶維度,用'abby'表示,那麼當我呼叫group().all()
時,城鎮維度將返回如下數組:
[
{town: 'reading', postcode: 'RG' }
]
這樣做的正確方法是什麼?
我知道我可以產生一個小鎮尺寸的東西,如
var townDimension = myCrossFilter.dimension(function(row) {
return row.town + ':' + row.postcode;
})
,然後調用組(後)。所有()上過濾的維,我將不得不手動轉換造成的列表串入{城鎮,郵編}對象列表。
但是在crossfilter中是否有支持這樣做?
這不是真的值得Crossfilter這樣做,我也不會想到。我只是在鏈接城鎮和郵政編碼的一側保留一張地圖,然後在顯示數據時添加郵政編碼。如果您必須這樣做,您可能需要調查將維度定義爲[「town」,「postcode」]的2元素數組是否適合您。 – 2014-11-24 14:44:07
是的,我的這個問題的目的確實是調查是否可以將維度定義爲城鎮和郵政編碼的2元素數組。 – 2014-11-24 14:48:10
你試過了嗎?我相信它應該起作用。雖然我認爲你必須使用函數來過濾。 – 2014-11-24 14:49:05