|
From: Harald H. <h.h...@tu...> - 2005-01-18 19:08:09
|
Hello everybody, I send one answer to all your comments. Please have a look to www.harald-harders.de/gnuplot/gnuplotbug.tar.gz It contains two gnuplot files that produce eps or png output respectively. And it contains the two subdirectories containing the output produced using the cvs version and the patched version. On Mon, 17 Jan 2005, Ethan Merritt wrote: > > In large splots with screen size above 1, arrows that are totally outside > > the screen coordinates 1,1 are not plotted, see example: > > I see no difference in the output before applying your patch > and after applying your patch. What, exactly, is the change > supposed to be? The difference only appears in the 3d plots (both with and without multiplot). All arrows and labels that start outside the boundaries 0 <= screen coordinate <= 1 are missing. Since the screen may be larger using 'set size 1.4,1.4', for example, this is not okay for x>1 and y>1. On Tue, 18 Jan 2005, Hans-Bernhard Broeker wrote: > > In large splots with screen size above 1, arrows that are totally outside > > the screen coordinates 1,1 are not plotted, see example: > > It might help if you explained in more detail what *exactly* is wrong > about the multi-page output generated by this script. This is probably > related to this old bug report at SF.net: The bug is not in the multi-page output and not in the multiplot output but appears with 3d plots when the screen is larger than 1.0,1,0. All arrows and labels with screen coordinates >1 that are inside the visible area are cut off. > I don't think 'set size' being larger than one is supposed to have > anything to do with this --- 'screen' coordinates are meant to be > relative to the actual screen size, not the default. This might be wanted but it is not the case. See the example. The arrows with screen coordinate 1 are always at the same position, independent of the size given by 'set size'. On Mon, 17 Jan 2005, Daniel J Sebald wrote: > I'm not understanding this one either, Harald. I've run your example, > and the arrows that are visible make sense. They are specified relative > to the screen and come out looking the same in all plots. However, the > plots are extended past the visible part of the plot. I think I > understand that the arrow you've plotted > > set arrow from screen 1.1,0 rto screen 0,.5 as 1 > > doesn't appear. However, that shouldn't appear because no portion of it > lies within the visible part of the image. Of course they are in the visible part of the image. By using set size 1.4,1.4 I enlarge the visible part of the image. But still a rectangle between the coordinates screen 0,0 and screen 1,1 has the original size and is not the boundary of the visible screen anymore. Then, arrows and labels with screen coordinates larger than 1 have to be plotted. > On the other hand, it still > doesn't appear even if a *portion* of the arrow should appear on the > screen. So that may be your point, no? For example, changing the above to > set arrow from screen 1.1,0 rto screen -.5,.5 as 1 > should give a portion of an arrow. That should be made to work fairly > easy. Afterall, the enlarged splots and plots show only a portion of > the axis on the screen. The arrows shouldn't be done any differently. Again, the visible part of the plot is enlarged by using set size 1.4,1.4 at least for both eps and png terminals. For x11 terminal, the behaviour is as described by Dan. I think, it is a bug of the x11 terminal. Otherwise gnuplot would not have a possibility to change the size of eps output. > Can the conditional test be removed altogether? The clipping should be > done at a lower level I would think. I agree. It should appear to every output. I hope you all see what is the problem I have found. For me it is really important to be able to change the size of the gnuplot eps output files. At the moment, the only way is to use 'set size'. There is another problem: If you remove the 'set size' command in line 48, the 4th plot does not have the global size 1.4,1.4 as the other plots but gets the global size 0.8,0.8. I think a size given inside set multiplot ... unset multiplot may not change the global size of the screen. Thus, in term_end_multi, the xsize and ysize at 'set multiplot' should be restored. Harald -- Harald Harders h.h...@tu... http://www.harald-harders.de |