Thanks for getting in touch.
I have tried to recreate your issue today. So what I did is I had 4 charts on the screen side by side. All have the same visible range for the Y (DateTimeAxis) axis. They are synced so that panning / zooming on any chart for the Y axis moves all of them in the same way. On all charts the X axis is a NumberAxis. Each of the charts has slightly different data, to simulate the notion of dynamic data from different feeds. Each chart has 1 LineSeries on it.
So I added a button which adds 2 data points to the third chart, via adding to the DataAdapter in a similar fashion to which you use. So what I did was pan/zoom the third chart slightly to make the visible range on the X axis to be different to that when the chart is first rendered. I then pressed the button and observed the visible range on the x axis resetting to a range akin to a full fresh load of the data. I believe this recreated your issue.
I then added code which stores the visible data range on the x axis before the data points are added. After the data has been added to the DataAdapter I provide code to request that this previous range is once again displayed on the x axis. The result is that when I press the add button, the data is added (can be seen in later pan/zoom action) but the visible range does not change.
Does this sound like the scenario which you describe?
The code I used was:
NumberRange xRange = (NumberRange) charts.getXAxis().getCurrentDisplayedRange();
addMoreData(); //adds the data to the DataAdapter
xRange.getMaximum(), false, false);
Please note that this code is crude proof of concept code and is by no means polished!
I hope you find this information useful. Please get back in touch if you have further queries.