Annotation of OpenXM_contrib/gnuplot/0BUGS, Revision 1.1.1.1
1.1 maekawa 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:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>