@@ -93,9 +93,20 @@ d3.json(url, function(error, data) {
93
93
. size ( 5 ) ;
94
94
95
95
// Owners chart:
96
- //var ownersChart = dc.bubbleChart("#ownersAndVulnerabilitiesChart");
97
- //var ownersDim = ndx.dimension(function(d) { return d["owner"]; });
98
- // http://bl.ocks.org/jun9/5631952
96
+ // var ownersChart = dc.bubbleChart("#ownersAndVulnerabilitiesChart");
97
+ // var ownersDim = ndx.dimension(function(d) { return d["owner"]; });
98
+ //
99
+ // var ownersGroup = ownersDim.group();
100
+ //
101
+ // ownersChart
102
+ // .dimension(ownersDim)
103
+ // .group(ownersGroup)
104
+ // .colorAcessor(function (p) { return ''; } )
105
+ // .keyAcessor(function (p) { return d.value; } )
106
+ // .valueAcessor(function (p) { return d.value; } )
107
+ // .x(d3.scale.linear().domain[0, 100]);
108
+ // // http://bl.ocks.org/jun9/5631952
109
+
99
110
100
111
101
112
// Time Overall chart:
@@ -114,10 +125,43 @@ d3.json(url, function(error, data) {
114
125
max = tmp ;
115
126
}
116
127
}
128
+
129
+ // https://github.com/dc-js/dc.js/wiki/FAQ#what-if-the-rows-contain-multiple-values
117
130
131
+ function reduceFieldsAdd ( fields ) {
132
+ return function ( p , v ) {
133
+ fields . forEach ( function ( f ) {
134
+ p [ f ] += v [ f ] ;
135
+ } ) ;
136
+ return p ;
137
+ } ;
138
+ }
139
+ function reduceFieldsRemove ( fields ) {
140
+ return function ( p , v ) {
141
+ fields . forEach ( function ( f ) {
142
+ p [ f ] -= v [ f ] ;
143
+ } ) ;
144
+ return p ;
145
+ } ;
146
+ }
147
+ function reduceFieldsInitial ( fields ) {
148
+ return function ( ) {
149
+ var ret = { } ;
150
+ fields . forEach ( function ( f ) {
151
+ ret [ f ] = 0 ;
152
+ } ) ;
153
+ return ret ;
154
+ } ;
155
+ }
156
+
157
+ var fields = [ 'status' ] ;
118
158
var overallDim = ndx . dimension ( function ( d ) { return timeParser . parse ( d [ "identification_date" ] ) ; } ) ;
119
- var overallGroup = overallDim . group ( ) . reduceCount ( function ( d ) { return d . identification_date ; } ) ;
159
+ // var overallGroup = overallDim.group().reduceCount(function(d) { return d.identification_date; });
160
+ var overallGroup = overallDim . group ( ) . reduce ( reduceFieldsAdd ( fields ) , reduceFieldsRemove ( fields ) , reduceFieldsInitial ( fields ) ) ;
161
+
120
162
163
+ console . log ( overallDim . top ( Infinity ) ) ;
164
+ console . log ( overallGroup . top ( Infinity ) ) ;
121
165
overallVolumeChart
122
166
. x ( d3 . time . scale ( ) . domain ( [ min , max ] ) )
123
167
. dimension ( overallDim )
0 commit comments