@@ -276,9 +276,8 @@ drawing.singlePointStyle = function(d, sel, trace) {
276
276
277
277
// allow array marker and marker line colors to be
278
278
// scaled by given max and min to colorscales
279
- var markerIn = ( trace . _input || { } ) . marker || { } ,
280
- markerScale = drawing . tryColorscale ( marker , markerIn , '' ) ,
281
- lineScale = drawing . tryColorscale ( marker , markerIn , 'line.' ) ;
279
+ var markerScale = drawing . tryColorscale ( marker , '' ) ,
280
+ lineScale = drawing . tryColorscale ( marker , 'line' ) ;
282
281
283
282
singlePointStyle ( d , sel , trace , markerScale , lineScale , marker , markerLine ) ;
284
283
@@ -290,50 +289,22 @@ drawing.pointStyle = function(s, trace) {
290
289
// allow array marker and marker line colors to be
291
290
// scaled by given max and min to colorscales
292
291
var marker = trace . marker ;
293
- var markerIn = ( trace . _input || { } ) . marker || { } ,
294
- markerScale = drawing . tryColorscale ( marker , markerIn , '' ) ,
295
- lineScale = drawing . tryColorscale ( marker , markerIn , 'line.' ) ;
292
+ var markerScale = drawing . tryColorscale ( marker , '' ) ,
293
+ lineScale = drawing . tryColorscale ( marker , 'line' ) ;
296
294
297
295
s . each ( function ( d ) {
298
296
drawing . singlePointStyle ( d , d3 . select ( this ) , trace , markerScale , lineScale ) ;
299
297
} ) ;
300
298
} ;
301
299
302
- // for a given color attribute (ie m -> mc = marker.color) look to see if we
303
- // have a colorscale for it (ie mscl, mcmin, mcmax) - if we do, translate
304
- // all numeric color values according to that scale
305
- drawing . tryColorscale = function ( cont , contIn , prefix ) {
306
- var colorArray = Lib . nestedProperty ( cont , prefix + 'color' ) . get ( ) ,
307
- scl = Lib . nestedProperty ( cont , prefix + 'colorscale' ) . get ( ) ,
308
- auto = Lib . nestedProperty ( cont , prefix + 'cauto' ) . get ( ) ,
309
- minProp = Lib . nestedProperty ( cont , prefix + 'cmin' ) ,
310
- maxProp = Lib . nestedProperty ( cont , prefix + 'cmax' ) ,
311
- min = minProp . get ( ) ,
312
- max = maxProp . get ( ) ;
313
-
314
- // TODO handle this in Colorscale.calc
315
- if ( scl && Array . isArray ( colorArray ) ) {
316
- if ( auto || ! isNumeric ( min ) || ! isNumeric ( max ) ) {
317
- min = Infinity ;
318
- max = - Infinity ;
319
- colorArray . forEach ( function ( color ) {
320
- if ( isNumeric ( color ) ) {
321
- if ( min > color ) min = + color ;
322
- if ( max < color ) max = + color ;
323
- }
324
- } ) ;
325
- if ( min > max ) {
326
- min = 0 ;
327
- max = 1 ;
328
- }
329
- minProp . set ( min ) ;
330
- maxProp . set ( max ) ;
331
- Lib . nestedProperty ( contIn , prefix + 'cmin' ) . set ( min ) ;
332
- Lib . nestedProperty ( contIn , prefix + 'cmax' ) . set ( max ) ;
333
- }
300
+ drawing . tryColorscale = function ( marker , prefix ) {
301
+ var cont = prefix ? Lib . nestedProperty ( marker , prefix ) . get ( ) : marker ,
302
+ scl = cont . colorscale ,
303
+ colorArray = cont . color ;
334
304
305
+ if ( scl && Array . isArray ( colorArray ) ) {
335
306
return Colorscale . makeColorScaleFunc (
336
- Colorscale . extractScale ( scl , min , max )
307
+ Colorscale . extractScale ( scl , cont . cmin , cont . cmax )
337
308
) ;
338
309
}
339
310
else return Lib . identity ;
0 commit comments