FYI,
For your issue, you will probably want to stick with the solution that you came up with since it is 1-a simple solution and 2-you have already implemented it. However you can use the solution below when you find that you need to use every bit of space available to you.
You can remove the "mostly useless" space on the left side of the graph using the graph stylesheet to utilize the space needed more efficiently. I recently needed to do this for a client that wanted a dashboard but wanted all of their graphs to show on the screen without having to scroll. When I made all of the graphs small enough, you could no longer easily tell what was in the graph due to the extra white space. This was done by adding the following api call to the graphstyle style sheet.
setRect(getFrame(),new Rectangle(x,y,width,hight));
The x,y cordinates start with -16000,16000 and end in 16000,-16000. Note that the x,y cordinate represents the lower left corner of the graph as the starting position and uses width and height to adjust the size of the graph within the HAXIS and VAXIS that you are already using.
The same rules apply to the legend as well, however you would use getLegend() rather than getFrame.
gizzy