spot framework
Version 0.0.7
高次元データセットをグループ化、ビン化、結合、集約して、インタラクティブなビジュアル分析を実現します。フィルターと呼ばれる、データの単純な (低次元の) 断面を定義します。フィルターはデータを分割 (ビン) し、集計 (合計、平均、標準偏差など) を実行できます。結果は、プロットまたは分析できる単純な配列として返されます (他の SPOT プロジェクトも参照)。すべてのフィルターはリンクされており、自動的に更新されます。
単一の API を使用して、クロスフィルターを介して完全にクライアント側で実行することも、 spot-server
使用して PostgreSQL データベースを使用することもできます。
git clone https://github.com/NLeSC/spot-framework.git && cd spot
npm install
// get a new Spot instance
var Spot = require ( './src/me' ) ;
var spot = new Spot ( ) ;
// add a dataset
var dataset = spot . datasets . add ( {
name : 'My data'
} ) ;
// add some data to the dataset
dataset . crossfilter . add ( [
{ firstName : 'John' , lastName : 'Smith' , age : 35 } ,
{ firstName : 'Mary' , lastName : 'Smith' , age : 49 } ,
{ firstName : 'Little' , lastName : 'Smith' , age : 8 } ,
{ firstName : 'Dee' , lastName : 'Jones' , age : 5 } ,
{ firstName : 'Doo' , lastName : 'Jones' , age : 9 }
] ) ;
// Have SPOT scan the dataset:
// 1. it auto-detects 'firstName', 'lastName', and 'age' attributes
// 2. it creates the corresponding Facets
dataset . scan ( ) ;
// make the dataset active
spot . toggleDataset ( dataset ) ;
var dataview = spot . dataview ;
// add a filter
var filter = dataview . filters . add ( {
title : 'filter one'
} ) ;
// ... that partitions the data on 'lastName'
filter . partitions . add ( [
{ facetName : 'lastName' , rank : 1 }
] ) ;
filter . partitions . forEach ( function ( partition ) {
partition . setGroups ( ) ;
} ) ;
// ... and that takes the average over the 'age'
filter . aggregates . add ( [
{ facetName : 'age' , rank : 1 , operation : 'avg' }
] ) ;
// initialize the filter
filter . initDataFilter ( ) ;
// listen to data
filter . on ( 'newData' , function ( ) {
console . log ( 'data: ' , filter . data ) ;
} ) ;
dataview . getData ( ) ;
スポットドキュメントはここにあります。
Jisk Attema、オランダ e サイエンス センター