Your comments

Just to add, my WPF application becomes unresponsive even if I limit the graph display to only 7500 items ( the graph source still has over 2M items), I can see that it is busy in CalculateActualInterval and the like. As it seems, to deal with this situation I will have to write a virtualization layer on top that will expose to the oxyplot layer only 7500 items each time, all this to cover on this awfully poor performing graph lib or is it WPF to blame? Very frustrating..

Glad you think it is a good feature to add.

Looking forward to this feature! For now I will have to add several PlotModels, I guess.
Well, PlotModel can actually take more than one Series as can be seen from the code.
The problem begins when these multiple series have different view resolution and zooming is performed on multiple series at once. Not ideal. It seems like my only option is to actually have multiple PlotModels.
Does it have Preview*  events? If so, try to subscribe to PreviewMouseDown maybe that would help... 
Thanks Oystein.

Well, maybe until there will be some proper example, someone could please help out? I'm trying to do something pretty basic for few days and failed.

I'm getting data at rate 100 Hz - every 5 seconds I want to scroll the graph and discard the 500 old points.
In other words, I want to show only 5 seconds worth of data at any given point and scroll the graph.
I tried several methods, increasing only the maximum and minimum of the x Axis, using translate/pan with X axis offset as shown somewhere here in the forum. Everything pretty much failed.
It looks like it works for few seconds and then the scrolling is lagging behind the plotting. This kind of scenario should be super simple... any help will be appreciated.