From: Ethan A M. <sf...@us...> - 2017-11-07 21:42:36
|
On Tuesday, November 7, 2017 12:48:39 PM PST Achim Gratz wrote: > Achim Gratz writes: > > Right now it's somewhere in a 1800 pages PDF report, I'll have to > > isolate the offending plots and get at the gnuplot code for that. For > > now I only know that those plots I've looked at didn't show any > > unexpected defects, so the warning seems to be spurious as far as the > > result goes. > > This one _should_ be simple to fix: The warnings get issued when a > previous plot used a reverse linear axis that is constrained to negative > values and the next plot uses a logarithmic axis. To reproduce: > > --8<---------------cut here---------------start------------->8--- > set xrange [-2*pi:-pi] reverse > set xrange [*:*] noreverse > set log x > --8<---------------cut here---------------end--------------->8--- Hold on a minute. That first line is not a legal command in version 5, or at any rate it is meaningless. The "reverse" keyword only applies to autoscaling. If that command is actually doing something, that's a bug all by itself. ... [thinking] ... On the other hand, that spurious warning is generated even without "reverse/noreverse" involved. I think the actual error is that set xrange [*:*] turns on autoscaling but does not erase the previous min/max. Since they were both negative numbers, "set log" complains. The code has a special check that handles the default axis range setting [-10:10]. Maybe that check should be extended to cover all cases of negative range limits? Not sure. But really I think the problem is that "set auto" and "set range [*:*] don't actually clear the previous limits. Unfortunately I suspect that the "refresh" command relies on that, so the best fix is not immediately clear. Ethan > > The error does not happen if the max of the first xrange is positive. > It seems that switching on autoscale does not correctly invalidate some > of the internal variables set up by the first xrange. > > The explanation for why this error is not having consequences on my > plots is that the correct range for the (now logarithmic) axis will > always be set later on. > > > Regards > Achim. |