|
From: Ethan M. <merritt@u.washington.edu> - 2008-06-05 19:54:07
|
On Thursday 05 June 2008 11:45:47 am Petr Mikulik wrote: > > > This user expects the key to work on the cb mapping, regardless of the > > current Z range. Since we are viewing in projection, why should the > > Z range matter? > > You typically "splot 'a.dat' u 1:2:3", thus z=cb. Well no, I typically am more likely to be plotting heat maps. So if I am using splot at all it is with 4D data. For 3D heat maps I can use either 'plot' or 'splot'. Also please note the my typical plot mode for a 3D heat map is "with impulses". http://skuld.bmsc.washington.edu/~merritt/gnuplot/lacI_variant3.png > "set log z" invalidates only non-positive z-points, which the pm3d mode > handles natively; "plot with image" cannot handle this. I am not following you here. What is it exactly that 'with image' cannot handle? > > Why should the hotkey act differently depending on whether you > > drew the graph with "plot" or "splot"? Since you can now use palette > > and other coloring options in both 2D and 3D, this seem to me an > > artificial distinction. > > The pm3d mode does not work in "plot". True. But almost all other plot modes work in both 2D and 3D. Would it be OK to make "set view map; plot ... with pm3d" a special case for interpreting 'l'? > On the other hand, "splot ... with image" + set log z reports errors. Only if the z coordinate range is non-positive. You can position the image in any plane you want to. > > Users who run a script written elsewhere may not even know whether the > > plot they are looking at on the screen was created by 'plot' or 'splot'. > > They shouldn't have to; the hotkeys should behave consistently for both > > cases. > > When 2D plots are unified ... then what to do with 3D splots and the 'l' > hotkey? Will it flip both z+cb? I think it should never flip both z and cb. That's the point I've been trying to make :-) > > If 'l' tries to toggle log-scale on z it will fail, even though it > > wouldn't have affected the appearance of the plot anyhow. Better it > > should only try to toggle cb. > > it fails only for "splot ... with image" That's not true. It has nothing to do with which plot style is in effect. > > Would it be compatible with your previous usage to toggle cb only? > > I imagine your old plots have z=cb, and in projection you cannot see z. > > The z is usefuly "only" to invalidate points for non-positive z (make the > pm3d plot transparent). OK, but do you need log scaling for that? Can't you just test for a non-positive value of z? > In summary: > > In "plot": > A. 'l' does "set log y" ... this is the current behaviour > B. 'l' does "set log cb" only if there are only > 'with image' plot(s), otherwise "set log y" I do not understand why you treat "with image" as a special case. _All_ plot styles can now use palette color in 2D plots. The problem is already there if you use: plot 'foo' using 1:2:3 with points lt palette z > In "splot": > A. 'l' does "set log z+cb" for both 3D and "view map" > ... this is the current behaviour This is quite wrong for general 3D plots. It may be that (PM3DSURFACE + splot_map) can be treated as a special case. > B. 'l' does: > "set log cb" in "view map" if there is a palette plot, > otherwise "set log z" > "set log z+cb" in 3D NACK. That was the original problem I am trying to fix. There is no good reason that you should not toggle z by itself for a 3D palette plot. What is wrong with: 'l' in the colorbar toggles cb; 'l' anywhere else toggles z? You can easily toggle both if you need to. > C. 'l' does "set log cb" in "view map" and "set log z+cb" > in 3D without "with image" and "set log cb" if there is some > "with image" at non-positive z-coordinates I see nothing special about "with image". I think that whatever we choose to do should treat all plot modes equally. Possibly pm3d surfaces in map mode can be an exception, if that is sufficient to proved backwards compatibility. Is it? |