Hi Kirk,
As you've noticed, the autoscaling of an axis in the graph is based on the entire data of each plot, not just on the portion of the plot that is within the range of the other axis.
If you use only integer limits for the min and max of the x axis, if you plot only 1D arrays, and if you don't mind re-plotting every time that you want to manually change the x-axis, there's a possible workaround, consisting of replacing PlotY with PlotWaveform, so that you can offset the data to plot.
I've adapted the code that you attached earlier to illustrate this:
int xmin = 40;
int xmax = 90;
SetAxisScalingMode(handle, PANEL_GRAPH, VAL_BOTTOM_XAXIS, VAL_MANUAL, (double)xmin, (double)xmax);
PlotWaveform (handle, PANEL_GRAPH, datapoints + xmin, xmax - xmin, VAL_DOUBLE, 1.0, 0.0, xmin, 1.0,
style, VAL_EMPTY_SQUARE, VAL_SOLID, 1, color);