Focusing the graph editor area to a custom [frame, keyframe_value] range I'm writing to Space types with draw callbacks bgl &amp; blf.  The area region.type == 'WINDOW' gives me the height and width correctly re 'UI', 'TOOLS' and 'CHANNELS' regions, but also includes the scrollbars.  Writing a 100% width box overwrites the scrollbars that determine what frame and value ranges are displayed.

Is there an API method available to focus in on a custom range, hopefully without needing to use the border select operator:

graph_area = context.screen.areas[4] # area.type = 'GRAPH_EDITOR'
graph_window_region = graph_area.regions[-1] # region.type = 'WINDOW'

c = context.copy()  # copy the context
c['area'] = graph_area
c['region'] = graph_window_region

# call ops with over-ridden context

bpy.ops.graph.view_all(c)
bpy.ops.graph.select_border(c, gesture_mode=3, xmax=lf, ymax=action_max)
bpy.ops.graph.view_selected(c)


The ops above focus the view to varying degrees of success, less so if there are envelope modifiers on the fcurves.  

Here is an example of what I want to get to.



ie having the full frame range and the value range in the top half of the region, my soundvis in the lower half.

EDIT

Ok I can fudge the value axis  of the preview range by adding a dummy property and keying in bottom left and top right coords, selecting and calling bpy.ops.graph.view_selected(c) as shown below.  The issue now is the frames, and looking at the image it occurs to me the preview range is including the handles. More to come.



PS: @CoDEmanX, thanks re scrollbars. apologies for the late edit, happier with the title now, the previous was a bit of a late night afterthought on this.  I'm afraid tho you are quite right and there is no way to do this.
Scrollbars aren't exposed to Python, you can't check or change their scroll position in a script.