You can use [`TemporalData`](https://reference.wolfram.com/language/ref/TemporalData.html) to construct your input data and then use [`TimeSeriesRescale`](https://reference.wolfram.com/language/ref/TimeSeriesRescale.html) on individual time series to get a perspective look/feel:

    numberofseries = 20;

    tds = Table[TemporalData[Table[Sin[x + i] + 2*i, {x, 0, 10, 0.1}], {0, 10}],
       {i, numberofseries}];

    ClearAll[xaxis]
    xaxis[a_, b_] := {GrayLevel[.4], Thickness -> Absolute[0.2], 
         {Line[#[[{1, -1}]]], Line[{#, Offset[{0, -5}, #]}] & /@ #, 
          Text[#[[1]], Offset[{0, -15}, #]] & /@ #} & @ Thread[{Range[a, b], 0}]};

    ListLinePlot[tds, ImageSize -> Large, Axes -> False, 
     Epilog -> xaxis[0, 10], AspectRatio -> 1/2, ImagePadding -> 20, 
     PlotRangeClipping -> False, Ticks -> {Range[0, 10], All}]

[![enter image description here][1]][1]

    
    ClearAll[rescaleTD]
    rescaleTD[ls_: .1, rs_: .1] := MapIndexed[TimeSeriesRescale[#, 
       Flatten[# /@ {"FirstTimes", "LastTimes"}] + {ls, rs} #2[[1]]] &, #] &;

    Grid @ (ListLinePlot[#, ImageSize -> Medium, Axes -> False, 
           Epilog -> xaxis, AspectRatio -> 1/2, ImagePadding -> 20, 
           PlotRangeClipping -> False, 
           Ticks -> {Range[0, 10], All}] & /@ 
       { rescaleTD[#, #]@tds, rescaleTD[#, -#]@tds, rescaleTD[#, -#/2]@tds} & /@ {.1, .15, .2})

[![enter image description here][2]][2]


  [1]: https://i.sstatic.net/GbPT4.png
  [2]: https://i.sstatic.net/5iW4j.png