[Pkg-octave-devel] Bug#361982: octave-epstk: autoscale writes
1.34e-14 instead of 0
Thomas Weber
thomas.weber.mail at gmail.com
Tue May 2 20:07:41 UTC 2006
Am Dienstag, den 02.05.2006, 19:29 +0200 schrieb Francesco Potorti`:
> >Could you please provide a script which triggers the bug, such that I can
> >forward the bug to the upstream author?
>
> Here it is:
>
> tx1=[0 0; 1 1400; 6 8e6; 6.6 8.6e6];
> eopen("bug.eps")
> eplot(tx1(:,1),tx1(:,2))
> eclose
> eview
The problem is in 'escalexy.m', in line 86
ticOffset=(iTic-nShortTics)*signOfDelta*deltaLabel/5;
values for the relevant call:
ticOffset = 3.0000e+04
iTic = 5
nShortTics = 3.9250
signOfDelta = 1
deltaLabel = 2000000
However:
debug> ticOffset - 30000
ans = 6.9122e-11
This non-zero values triggers a 'wrong' value for 'firstTicValue'.
Writing the statement as
signOfDelta*deltaLabel/5 * iTic - ...
signOfDelta*deltaLabel/5 * nShortTics
fixes it for me. However, I'm not sure whether this kind of 'fix' is
good: it makes the code more difficult to understand and might just
trigger problems in other cases (for example, if both numbers are
small).
Any ideas?
Thomas
More information about the Pkg-octave-devel
mailing list