@@ -194,6 +194,37 @@ drawing.symbolNumber = function(v) {
194
194
} ;
195
195
196
196
function singlePointStyle ( d , sel , trace , markerScale , lineScale , marker , markerLine ) {
197
+ // only scatter & box plots get marker path and opacity
198
+ // bars, histograms don't
199
+ if ( Registry . traceIs ( trace , 'symbols' ) ) {
200
+ var sizeFn = makeBubbleSizeFn ( trace ) ;
201
+
202
+ sel . attr ( 'd' , function ( d ) {
203
+ var r ;
204
+
205
+ // handle multi-trace graph edit case
206
+ if ( d . ms === 'various' || marker . size === 'various' ) r = 3 ;
207
+ else r = subTypes . isBubble ( trace ) ?
208
+ sizeFn ( d . ms ) : ( marker . size || 6 ) / 2 ;
209
+
210
+ // store the calculated size so hover can use it
211
+ d . mrc = r ;
212
+
213
+ // turn the symbol into a sanitized number
214
+ var x = drawing . symbolNumber ( d . mx || marker . symbol ) || 0 ,
215
+ xBase = x % 100 ;
216
+
217
+ // save if this marker is open
218
+ // because that impacts how to handle colors
219
+ d . om = x % 200 >= 100 ;
220
+
221
+ return drawing . symbolFuncs [ xBase ] ( r ) +
222
+ ( x >= 200 ? DOTPATH : '' ) ;
223
+ } )
224
+ . style ( 'opacity' , function ( d ) {
225
+ return ( d . mo + 1 || marker . opacity + 1 ) - 1 ;
226
+ } ) ;
227
+ }
197
228
198
229
// 'so' is suspected outliers, for box plots
199
230
var fillColor ,
@@ -254,41 +285,9 @@ drawing.singlePointStyle = function(d, sel, trace) {
254
285
drawing . pointStyle = function ( s , trace ) {
255
286
if ( ! s . size ( ) ) return ;
256
287
257
- var marker = trace . marker ;
258
-
259
- // only scatter & box plots get marker path and opacity
260
- // bars, histograms don't
261
- if ( Registry . traceIs ( trace , 'symbols' ) ) {
262
- var sizeFn = makeBubbleSizeFn ( trace ) ;
263
-
264
- s . attr ( 'd' , function ( d ) {
265
- var r ;
266
-
267
- // handle multi-trace graph edit case
268
- if ( d . ms === 'various' || marker . size === 'various' ) r = 3 ;
269
- else r = subTypes . isBubble ( trace ) ?
270
- sizeFn ( d . ms ) : ( marker . size || 6 ) / 2 ;
271
-
272
- // store the calculated size so hover can use it
273
- d . mrc = r ;
274
-
275
- // turn the symbol into a sanitized number
276
- var x = drawing . symbolNumber ( d . mx || marker . symbol ) || 0 ,
277
- xBase = x % 100 ;
278
-
279
- // save if this marker is open
280
- // because that impacts how to handle colors
281
- d . om = x % 200 >= 100 ;
282
-
283
- return drawing . symbolFuncs [ xBase ] ( r ) +
284
- ( x >= 200 ? DOTPATH : '' ) ;
285
- } )
286
- . style ( 'opacity' , function ( d ) {
287
- return ( d . mo + 1 || marker . opacity + 1 ) - 1 ;
288
- } ) ;
289
- }
290
288
// allow array marker and marker line colors to be
291
289
// scaled by given max and min to colorscales
290
+ var marker = trace . marker ;
292
291
var markerIn = ( trace . _input || { } ) . marker || { } ,
293
292
markerScale = drawing . tryColorscale ( marker , markerIn , '' ) ,
294
293
lineScale = drawing . tryColorscale ( marker , markerIn , 'line.' ) ;
0 commit comments