@@ -1310,7 +1310,7 @@ JSROOT.define(['d3', 'painter', 'math', 'gpad'], (d3, jsrp) => {
13101310 let grx = funcs . grx ( pnt . x ) ;
13111311
13121312 // when drawing bars, take all points
1313- if ( ! this . options . Bar && ( ( grx < 0 ) || ( grx > w ) ) ) return true ;
1313+ if ( ! this . options . Bar && ( ( grx < 0 ) || ( grx > w ) ) ) return true ;
13141314
13151315 let gry = funcs . gry ( pnt . y ) ;
13161316
@@ -1346,7 +1346,7 @@ JSROOT.define(['d3', 'painter', 'math', 'gpad'], (d3, jsrp) => {
13461346 . enter ( )
13471347 . append ( "svg:g" )
13481348 . attr ( "class" , "grpoint" )
1349- . attr ( "transform" , d => " translate(" + d . grx1 + "," + d . gry1 + ")" ) ;
1349+ . attr ( "transform" , d => ` translate(${ d . grx1 } , ${ d . gry1 } )` ) ;
13501350 }
13511351
13521352 if ( this . options . Bar ) {
@@ -1396,8 +1396,14 @@ JSROOT.define(['d3', 'painter', 'math', 'gpad'], (d3, jsrp) => {
13961396 let lw = this . lineatt . width + JSROOT . gStyle . fEndErrorSize , bb = 0 ,
13971397 vv = this . options . Ends ? "m0," + lw + "v-" + 2 * lw : "" ,
13981398 hh = this . options . Ends ? "m" + lw + ",0h-" + 2 * lw : "" ,
1399- vleft = vv , vright = vv , htop = hh , hbottom = hh ,
1400- mm = this . options . MainError ? "M0,0L" : "M" ; // command to draw main errors
1399+ vleft = vv , vright = vv , htop = hh , hbottom = hh ;
1400+
1401+ const mainLine = ( dx , dy ) => {
1402+ if ( ! this . options . MainError ) return `M${ dx } ,${ dy } ` ;
1403+ let res = "M0,0" ;
1404+ if ( dx ) return res + ( dy ? `L${ dx } ,${ dy } ` : `H${ dx } ` ) ;
1405+ return dy ? res + `V${ dy } ` : res ;
1406+ } ;
14011407
14021408 switch ( this . options . Ends ) {
14031409 case 2 : // option []
@@ -1435,17 +1441,17 @@ JSROOT.define(['d3', 'painter', 'math', 'gpad'], (d3, jsrp) => {
14351441 . style ( "stroke" , "none" )
14361442 . style ( "fill" , "none" )
14371443 . style ( "pointer-events" , "visibleFill" )
1438- . attr ( "d" , d => "M" + d . grx0 + "," + d . gry0 + "h" + ( d . grx2 - d . grx0 ) + "v" + ( d . gry2 - d . gry0 ) + "h" + ( d . grx0 - d . grx2 ) + "z" ) ;
1444+ . attr ( "d" , d => `M ${ d . grx0 } , ${ d . gry0 } h ${ d . grx2 - d . grx0 } v ${ d . gry2 - d . gry0 } h ${ d . grx0 - d . grx2 } z` ) ;
14391445
14401446 visible . append ( "svg:path" )
14411447 . call ( this . lineatt . func )
14421448 . style ( "fill" , "none" )
14431449 . attr ( "d" , d => {
14441450 d . error = true ;
1445- return ( ( d . exlow > 0 ) ? mm + ( d . grx0 + lw ) + "," + d . grdx0 + vleft : "" ) +
1446- ( ( d . exhigh > 0 ) ? mm + ( d . grx2 - lw ) + "," + d . grdx2 + vright : "" ) +
1447- ( ( d . eylow > 0 ) ? mm + d . grdy0 + "," + ( d . gry0 - lw ) + hbottom : "" ) +
1448- ( ( d . eyhigh > 0 ) ? mm + d . grdy2 + "," + ( d . gry2 + lw ) + htop : "" ) ;
1451+ return ( ( d . exlow > 0 ) ? mainLine ( d . grx0 + lw , d . grdx0 ) + vleft : "" ) +
1452+ ( ( d . exhigh > 0 ) ? mainLine ( d . grx2 - lw , d . grdx2 ) + vright : "" ) +
1453+ ( ( d . eylow > 0 ) ? mainLine ( d . grdy0 , d . gry0 - lw ) + hbottom : "" ) +
1454+ ( ( d . eyhigh > 0 ) ? mainLine ( d . grdy2 , d . gry2 + lw ) + htop : "" ) ;
14491455 } ) ;
14501456 }
14511457
0 commit comments