code: function reOrderBars(plot, serie, datapoints){
              var shiftedPoints = null;
  
              if(serieNeedToBeReordered(serie)){
                  checkIfGraphIsHorizontal(serie);
                  calculPixel2XWidthConvert(plot);
                  retrieveBarSeries(plot);
                  calculBorderAndBarWidth(serie);
  
                  if(nbOfBarsToOrder >= 2){
                      var position = findPosition(serie);
                      var decallage = 0;
  
                      var centerBarShift = calculCenterBarShift();
  
                      // If we haven't already calculated the decallage for this order value, do it.
                      if(typeof decallageByOrder[serie.bars.order] === 'undefined') {
                          if (isBarAtLeftOfCenter(position)){
                              decallageByOrder[serie.bars.order] = -1*(sumWidth(orderedBarSeries,position-1,Math.floor(nbOfBarsToOrder / 2)-1)) - centerBarShift;
                          }else{
                              decallageByOrder[serie.bars.order] = sumWidth(orderedBarSeries,Math.ceil(nbOfBarsToOrder / 2),position-2) + centerBarShift + borderWidthInXabsWidth*2;
                          }
                      }
  
                      // Lookup the decallage based on the series' order value.
                      decallage = decallageByOrder[serie.bars.order];
  
                      shiftedPoints = shiftPoints(datapoints,serie,decallage);
                      datapoints.points = shiftedPoints;
                  }
              }
              return shiftedPoints;
          }
docs: /*
  This method add shift to x values