@@ -702,6 +702,7 @@ exports.doAutoRangeAndConstraints = function(gd) {
702702 var axList = Axes . list ( gd , '' , true ) ;
703703 var matchGroups = fullLayout . _axisMatchGroups || [ ] ;
704704 var ax ;
705+ var axRng ;
705706
706707 for ( var i = 0 ; i < axList . length ; i ++ ) {
707708 ax = axList [ i ] ;
@@ -721,23 +722,24 @@ exports.doAutoRangeAndConstraints = function(gd) {
721722 ax = Axes . getFromId ( gd , id ) ;
722723 if ( ax . autorange === false ) continue groupLoop;
723724
725+ axRng = Lib . simpleMap ( ax . range , ax . r2l ) ;
724726 if ( rng ) {
725727 if ( rng [ 0 ] < rng [ 1 ] ) {
726- rng [ 0 ] = Math . min ( rng [ 0 ] , ax . range [ 0 ] ) ;
727- rng [ 1 ] = Math . max ( rng [ 1 ] , ax . range [ 1 ] ) ;
728+ rng [ 0 ] = Math . min ( rng [ 0 ] , axRng [ 0 ] ) ;
729+ rng [ 1 ] = Math . max ( rng [ 1 ] , axRng [ 1 ] ) ;
728730 } else {
729- rng [ 0 ] = Math . max ( rng [ 0 ] , ax . range [ 0 ] ) ;
730- rng [ 1 ] = Math . min ( rng [ 1 ] , ax . range [ 1 ] ) ;
731+ rng [ 0 ] = Math . max ( rng [ 0 ] , axRng [ 0 ] ) ;
732+ rng [ 1 ] = Math . min ( rng [ 1 ] , axRng [ 1 ] ) ;
731733 }
732734 } else {
733- rng = ax . range ;
735+ rng = axRng ;
734736 }
735737 }
736738
737739 for ( id in group ) {
738740 ax = Axes . getFromId ( gd , id ) ;
739- ax . range = rng . slice ( ) ;
740- ax . _input . range = rng . slice ( ) ;
741+ ax . range = Lib . simpleMap ( rng , ax . l2r ) ;
742+ ax . _input . range = ax . range . slice ( ) ;
741743 ax . setScale ( ) ;
742744 }
743745 }
0 commit comments