Paul,
My answer could be surprising and i hope you will like it: with LOG scale you do not have to worry about limits or try to implement them. Just use for the LOG plots limits usual natural limits the plotting data has. Everyone doing exactly that as a #1 option and generally it looks very good with LOG plots.
The 'exact decade limits' i posted two posts back here (or the ones posted by Ken earlier) is another options for LOG scale plotting but we used it as a hack only because currently LOG scale plotting has a bug and it can not use existing plotting data min and max as its limits. Or, saying more precise, it can use but has bugs there, so the tic marks all are wrong and plot itself often goes out of frame. Older Simpleplot %pl works fine here, see the source code and the picture i posted also here week or two back on page 9. Just implementing the same will solve most of our LOG plotting problems.

The 'exact decade limits' can be done only temporally or as a second option. If you will do that like i or Ken posted then you have to take in mind that in my case i used restriction 1e-30 which is used only because %pl does not accept double precision numbers for the limits like 1d-50 or 1d150 (unless i am mistaken, and this was already fixed, i did not check this lately)
