Description of problem: Version-Release number of selected component (if applicable): GNU Octave, version 2.1.36 (Solved in later versions of Octave) How reproducible: 100% Steps to Reproduce: octave:1> x = y = [0:0.01:2]; octave:2> z = sin(x' * y); octave:3> contour(x,y,z,[1:1:15]) Actual results: Only 10 contour lines appear Expected results: 15 contour lines appear Additional info:
The url contains all the information. The problem seems to be caused because there sprintf cannot handle large strings. This is a problem as octave sends the levels to gnuplot as a string. In the process some levels are forgotten.
*** Bug 89704 has been marked as a duplicate of this bug. ***
The noted behavior does indeed occur in 2.1.36, but does not in 2.1.40, which shipped with Red Hat Linux 9. The Red Hat Linux 9 RPM is available from: ftp://ftp.redhat.com/pub/redhat/linux/9/en/os/i386/RedHat/RPMS/octave-2.1.40-4.i386.rpm and should work fine on an installed 8.0 system (I upgraded an installed 8.0 system's octave package to the above package). [root@water root]# octave GNU Octave, version 2.1.40 (i386-redhat-linux-gnu). Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002 John W. Eaton. This is free software; see the source code for copying conditions. There is ABSOLUTELY NO WARRANTY; not even for MERCHANTIBILITY or FITNESS FOR A PARTICULAR PURPOSE. For details, type `warranty'. Please contribute if you find this software useful. For more information, visit http://www.octave.org/help-wanted.html Report bugs to <bug-octave.wisc.edu>. octave:1> x = y = [0:0.01:2]; octave:2> z = sin(x' * y); octave:3> contour(x,y,z,[1:1:15]) tmp = 1.000000, 2.000000 tmp = 1.000000, 2.000000, 3.000000 tmp = 1.000000, 2.000000, 3.000000, 4.000000 tmp = 1.000000, 2.000000, 3.000000, 4.000000, 5.000000 tmp = 1.000000, 2.000000, 3.000000, 4.000000, 5.000000, 6.000000 tmp = 1.000000, 2.000000, 3.000000, 4.000000, 5.000000, 6.000000, 7.000000 tmp = 1.000000, 2.000000, 3.000000, 4.000000, 5.000000, 6.000000, 7.000000, 8.000000 tmp = 1.000000, 2.000000, 3.000000, 4.000000, 5.000000, 6.000000, 7.000000, 8.000000, 9.000000 tmp = 1.000000, 2.000000, 3.000000, 4.000000, 5.000000, 6.000000, 7.000000, 8.000000, 9.000000, 10.000000 tmp = 1.000000, 2.000000, 3.000000, 4.000000, 5.000000, 6.000000, 7.000000, 8.000000, 9.000000, 10.000000, 11.000000 tmp = 1.000000, 2.000000, 3.000000, 4.000000, 5.000000, 6.000000, 7.000000, 8.000000, 9.000000, 10.000000, 11.000000, 12.000000 tmp = 1.000000, 2.000000, 3.000000, 4.000000, 5.000000, 6.000000, 7.000000, 8.000000, 9.000000, 10.000000, 11.000000, 12.000000, 13.000000 tmp = 1.000000, 2.000000, 3.000000, 4.000000, 5.000000, 6.000000, 7.000000, 8.000000, 9.000000, 10.000000, 11.000000, 12.000000, 13.000000, 14.000000 tmp = 1.000000, 2.000000, 3.000000, 4.000000, 5.000000, 6.000000, 7.000000, 8.000000, 9.000000, 10.000000, 11.000000, 12.000000, 13.000000, 14.000000, 15.000000 command = gset cntrparam levels discrete 1.000000, 2.000000, 3.000000, 4.000000, 5.000000, 6.000000, 7.000000, 8.000000, 9.000000, 10.000000, 11.000000, 12.000000, 13.000000, 14.000000, 15.000000 octave:4>