home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 22 gnu / 22-gnu.zip / gp371os2.zip / 0BUGS next >
Text File  |  1998-12-21  |  8KB  |  223 lines

  1.  
  2.  1. The hidden line algorithm is not perfect.  We have put in an option
  3.     to draw both sides of the surface in the same linetype, thus avoiding
  4.     this problem completely.  We should put in an option of not drawing
  5.     the back at all.
  6.  
  7.  2. In the Atari version, windows are not currently supported.  This
  8.     means gnuplot 3.4 will not run with MultiAES.  We hope to correct
  9.     this shortly in gpcontrb.tar.z.
  10.     [Status of this bug: unknown]
  11.  
  12.  3. autoscale writeback is probably broken.  One problem is that
  13.     the range is written back before the range is extented to a
  14.     whole number of tics. eg  if data is 0.9->10.1, that is what
  15.     gets written back, but the plot is 0 -> 11.  If autoscale
  16.     is switched off, you do get 0.9->10.1 since switching off
  17.     autoscale switches off the extend-to-tic-multiple stuff.
  18.  
  19.     Also, writeback with log scales writes back the log of the min/max
  20.     [Status: unknown]
  21.  
  22.  4. m[]tics bug when plotting time data
  23.     There is an initialization problem when plotting time data with an
  24.     interval calculation; an inordinate number of m[]tics are automatically
  25.     drawn, e.g., 
  26.  
  27.       set xdata time; set ydata time
  28.       set timefmt "%d/%m"
  29.       set format x "%b %d"
  30.       set xrange ["01/12":"06/12"]
  31.       set xtics "01/12", 172800, "05/12"
  32.       plot x
  33.  
  34.     The problem can be avoided by initializing via a plot before the 
  35.     interval calculation:
  36.       [...]
  37.       set xrange ["01/12":"06/12"]
  38.       plot x
  39.       set xtics "01/12", 172800, "05/12"
  40.       plot x
  41.  
  42.  5. "\n" does not work in the format for the tics in splot
  43.  
  44.  6. Error bars don't work in polar plots
  45.  
  46.  7. arrows and labels are not clipped (2D and 3D)
  47.  
  48.  8. contour line clipping of 3D data plots
  49.     The following tips for plotting contours were kindly supplied by Don Taber
  50.     <dtaber@blackrat.risc.rockwell.com> and Paul Halsema <phalsema@harris.com>.
  51.  
  52.     Splotting gives little control over the appearance of contour lines.
  53.     You can do a better job by extracting the contours with the table
  54.     terminal and then plotting the resulting file.  You should 'set
  55.     nosurface' to eliminate the surface isolines from the file generated
  56.     by the table terminal.
  57.  
  58.     All the contours will be written to a single file.  To plot them with
  59.     different line styles, you can use one of several approaches.  The
  60.     simplest is to use the 'index' feature.  This has the advantage of
  61.     using only gnuplot internals.  Other approaches use a utility
  62.     such as sed, awk, or perl to either break up the file or generate
  63.     a more sophisticated command file for plotting it.
  64.  
  65.     The following gnuplot script extracts circular contours from a
  66.     paraboloid of revolution and plots the resulting file. It then
  67.     uses 'index' to provide different linestyles.  Finally, it runs
  68.     an awk script to generate a command file for plotting the file.
  69.  
  70.        set cntrparam levels discrete 20, 40, 60
  71.        set contour base
  72.        set nosurface
  73.        splot x**2 + y**2
  74.        set term table
  75.        set output 'circles'
  76.        replot
  77.        set term linux  # or whatever your original term was
  78.        set output
  79.  
  80.        plot 'circles'   # all one linestyle
  81.  
  82.        plot 'circles' index 0 t '20', 'circles' index 1 t '40', 'circles' index 2 t '60'  # different linestyles
  83.  
  84.        !awk -f contr.awk circles > circles.gnu
  85.        load 'circles.gnu'
  86.  
  87.     Where the gawk script (contr.awk) contains the following:
  88.  
  89. #!/usr/bin/nawk -f
  90. #          ^---Replace with your favorite variant
  91. # courtesy of Paul Halsema (phalsema@harris.com)
  92. # and Emmanuel Bigler <bigler@jsbach.univ-fcomte.fr>
  93. #
  94. # This script operates on a file generated by a gnuplot splot command with
  95. # a table terminal type.  The output should be redirected to another file
  96. # which can then be loaded into gnuplot.  This results in a contour plot
  97. # that is more appealing for presentation purposes.  Providing the optional
  98. # parameter n will put a label on the contour at every nth point.
  99. #
  100. # Sample usage (in gnuplot):
  101. # !nawk -f contr.awk -v n=12 circles > circles.gnu
  102. # load 'circles.gnu'
  103. #
  104. # If you make this script executable and place it somewhere in your path,
  105. # then it can be called directly as in:
  106. #
  107. # !nawk -f contr.awk -v n=12 circles > circles.gnu
  108. # load 'circles.gnu'
  109.  
  110. BEGIN {
  111.   fmt1="%s \\\n     index %d title '%s'";
  112.   fmt2="%s, \\\n  '' index %d title '%s'";
  113. # Add any gnuplot commands that you always want performed here
  114.   print "set key out";
  115.   print "set key title '" FILENAME "'";
  116.   print "set data style lines";
  117.   print
  118. # End of general commands section
  119.   pltcmd="plot '"FILENAME"'";
  120. }
  121.  
  122. {
  123. # Generate a fragment of the plot command for each contour
  124.   if ($2=="Contour")
  125.   {
  126.     split($3,indx,",");
  127.     titl=$5;
  128.     if ($3=="0,") { pltcmd=sprintf(fmt1, pltcmd, indx[1], titl); }
  129.     else          { pltcmd=sprintf(fmt2, pltcmd, indx[1], titl); }
  130.   }
  131. # Add labels at every nth point along a contour
  132.   if( (n!=0) && ($0 !~ /^\#/) && ($0 !~ /^$/) && ((NR%n)==1))
  133.     {printf("set label '%s' at %f,%f center\n",$3,$1,$2);}
  134. }
  135.  
  136. END {
  137. # Write out the entire plot command
  138.   printf "\n%s\n", pltcmd;
  139. }
  140.  
  141.  9. There is an initialization problem of when plotting time data with an
  142.     interval calculation; an inordinate number of m[]tics are automatically
  143.     drawn, e.g., 
  144.  
  145.        set xdata time; set ydata time
  146.        set timefmt "%d/%m"
  147.        set format x "%b %d"
  148.        set xrange ["01/12":"06/12"]
  149.        set xtics "01/12", 172800, "05/12"
  150.        plot x
  151.  
  152.     The problem can be avoided by initializing via a plot before the 
  153.     interval calculation:
  154.        [...]
  155.        set xrange ["01/12":"06/12"]
  156.        plot x
  157.        set xtics "01/12", 172800, "05/12"
  158.        plot x
  159.  
  160. 10. (Not really a bug)
  161.   Terminal drivers which are accompanied by external executables
  162.   could cause some trouble: their subprocesses (started by fork() e.g.)
  163.   may inherit handles to open file(s) from the main process.
  164.   If the filesystem doesn't allow deleting open files these file are
  165.   locked for the time the terminal driver is running.
  166.  
  167. 11. OS/2 gcc optimiser bug
  168.   The following gnuplot commands demonstrate a bug in gcc's optimiser
  169.   under OS/2. The workaround is to use "-O2 -ffloat-store" instead of "-O2".
  170.  
  171. reset
  172. set key
  173. set xlabel "Year"
  174. set xdata time
  175. set timefmt "%y%m%d"
  176. set format x "%y"
  177. set xrange ["900621" : "950126"]
  178. set ylabel "Price per $100 principal"
  179. plot '-' using 1:2 title 'Fitted IO' with lines 1
  180. 900621 20
  181. 950126 55
  182. e
  183.  
  184. 12. compiling help file with Visual C++ 4.0/Windows NT
  185.   The help compiler is unable to compile gnuplot.rtf, possibly because
  186.   it cannot handle the new RTF spec. There is no workaround, but
  187.   VC++ 5.0/6.0 users should have no problems.
  188.  
  189. 13. The 16bit Windows version, compiled by Borland C++ 3.1, crashes with
  190.   a protection violation in 'all.dem', on the first plot that tries
  191.   to read a datafile. Heap corruption suspected.
  192.  
  193. (Moved from old WhatsNew file, needs cleaning up)
  194.  
  195. BUGS outstanding
  196.   illegal trailing tab on fig output
  197.   minor tics missing on HPUX ?
  198.   terminal settings get propagated when terminal is changed (now fixed ?)
  199.   set ?range [] writeback is broken for logscales.
  200.   source file copyrights are out of date - what should go on new files ?
  201.   to be documented - ms-windows cannot do wide, dashed lines (well, win32 can,
  202.   but...)
  203.  
  204. OTHER ISSUES
  205.   set mapping spherical is not 'real' spherical polars
  206.   terminals are no longer allowed to do their own scaling
  207.   break up some of the drivers (eg epson and family) into their
  208.     own files. *maybe* we can provide libraries of generic routines
  209.     (particularly tex) which can be used by all interested drivers,
  210.     and because they are a library, they are linked only if
  211.     any relevant drivers are installed. bitmap.c could also be
  212.     linked in this way.
  213.   Now that all drivers are new format, do we need to explore separate
  214.     compilation of the drivers into their own .obj files for DOS ?
  215.   hidden line is still slower than in 3.5
  216.   have I got all os/2 and (in particular) mac changes ?
  217.   filled boxes ?
  218.   substitution using backquotes should not have a length limit
  219.   the source indentation stinks - may I pass it through gnu indent,
  220.      or will that mess up use of patches which did not make it into
  221.      the release.
  222.      
  223.