Whenever the window size changes the chart checks to see if the parent container’s size is still the same. If not, it re-adjusts itself – this is just an added feature that I’ve put. So, whenever you press ALT key (which displays menu), it changes the size of view-port and hence triggers re-adjustment logic in Chart. Because the container’s size has been set by the time you hit ALT, chart re-adjusts to its actual width. So, I would still say that it was timing issue.
If you want to remove iframe, best solution is to create chart once the layout is set – either by using jQuery’s ready method or a time delay. I would prefer jQuery’s ready event if that worked in your case.