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