JSFiddle - React, Tailwind, and code Playground

HTML

<div id="container" style="height: 400px; min-width: 600px"></div>
<div id="report" style="font: 0.8em sans-serif"></div>

<script src="http://code.highcharts.com/stock/highstock.js"></script>
<script src="http://code.highcharts.com/stock/modules/exporting.js"></script>
<script type="text/javascript" src="http://www.highcharts.com/samples/data/usdeur.js"></script>

JavaScript

$(function() {
    
    var lastX0;
    var lastX1;
    var maxRange = 100; //100 pixels
    
    (function (H) {       
        H.wrap(H.Scroller.prototype, 'render', function (proceed) {    
           // console.log(arguments)
            if(arguments[4] - arguments[3] > maxRange + 2) {
                if (arguments[3] < lastX0) {
                    arguments[3] = lastX0;
                } else {
                    arguments[4] = lastX1;
                }
            }
            proceed.apply(this, [].slice.call(arguments, 1));
            
            lastX0 = arguments[3];
            lastX1 = arguments[4];
        });
    }(Highcharts));  
    
    $('#container').highcharts('StockChart', {
        scrollbar: {
            liveRedraw: true
        },
        series: [{
            name: 'USD to EUR',
            data: usdeur
        }]
    });
    

    var highchart = $('#container').highcharts();
    var extremes = highchart.xAxis[0].getExtremes();
    var rangeTotal = extremes.max - extremes.min;
     console.log(rangeTotal)
    var f = maxRange / $('#container').width();
    highchart.xAxis[0].setExtremes(extremes.max - (f * rangeTotal), extremes.max);
});