@@ -17,6 +17,8 @@ var Color = require('../../components/color');
17
17
var Drawing = require ( '../../components/drawing' ) ;
18
18
var Axes = require ( '../../plots/cartesian/axes' ) ;
19
19
20
+ var filterVisible = require ( '../../lib/filter_visible' ) ;
21
+
20
22
var addProjectionsToD3 = require ( './projections' ) ;
21
23
var createGeoScale = require ( './set_scale' ) ;
22
24
var createGeoZoom = require ( './zoom' ) ;
@@ -139,20 +141,6 @@ proto.plot = function(geoData, fullLayout, promises) {
139
141
// to avoid making multiple request while streaming
140
142
} ;
141
143
142
- // filter out non-visible trace
143
- // geo plot routine use the classic join/enter/exit pattern to update traces
144
- function filterData ( dataIn ) {
145
- var dataOut = [ ] ;
146
-
147
- for ( var i = 0 ; i < dataIn . length ; i ++ ) {
148
- var trace = dataIn [ i ] ;
149
-
150
- if ( trace . visible === true ) dataOut . push ( trace ) ;
151
- }
152
-
153
- return dataOut ;
154
- }
155
-
156
144
proto . onceTopojsonIsLoaded = function ( geoData , geoLayout ) {
157
145
var i ;
158
146
@@ -190,7 +178,7 @@ proto.onceTopojsonIsLoaded = function(geoData, geoLayout) {
190
178
var moduleData = traceHash [ moduleNames [ i ] ] ;
191
179
var _module = moduleData [ 0 ] . _module ;
192
180
193
- _module . plot ( this , filterData ( moduleData ) , geoLayout ) ;
181
+ _module . plot ( this , filterVisible ( moduleData ) , geoLayout ) ;
194
182
}
195
183
196
184
this . traceHash = traceHash ;
0 commit comments