You can subscribe to this list here.
2001 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
|
Oct
|
Nov
(1) |
Dec
|
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
|
Oct
(83) |
Nov
(57) |
Dec
(111) |
2004 |
Jan
(38) |
Feb
(121) |
Mar
(107) |
Apr
(241) |
May
(102) |
Jun
(190) |
Jul
(239) |
Aug
(158) |
Sep
(184) |
Oct
(193) |
Nov
(47) |
Dec
(68) |
2005 |
Jan
(190) |
Feb
(105) |
Mar
(99) |
Apr
(65) |
May
(92) |
Jun
(250) |
Jul
(197) |
Aug
(128) |
Sep
(101) |
Oct
(183) |
Nov
(186) |
Dec
(42) |
2006 |
Jan
(102) |
Feb
(122) |
Mar
(154) |
Apr
(196) |
May
(181) |
Jun
(281) |
Jul
(310) |
Aug
(198) |
Sep
(145) |
Oct
(188) |
Nov
(134) |
Dec
(90) |
2007 |
Jan
(134) |
Feb
(181) |
Mar
(157) |
Apr
(57) |
May
(81) |
Jun
(204) |
Jul
(60) |
Aug
(37) |
Sep
(17) |
Oct
(90) |
Nov
(122) |
Dec
(72) |
2008 |
Jan
(130) |
Feb
(108) |
Mar
(160) |
Apr
(38) |
May
(83) |
Jun
(42) |
Jul
(75) |
Aug
(16) |
Sep
(71) |
Oct
(57) |
Nov
(59) |
Dec
(152) |
2009 |
Jan
(73) |
Feb
(213) |
Mar
(67) |
Apr
(40) |
May
(46) |
Jun
(82) |
Jul
(73) |
Aug
(57) |
Sep
(108) |
Oct
(36) |
Nov
(153) |
Dec
(77) |
2010 |
Jan
(42) |
Feb
(171) |
Mar
(150) |
Apr
(6) |
May
(22) |
Jun
(34) |
Jul
(31) |
Aug
(38) |
Sep
(32) |
Oct
(59) |
Nov
(13) |
Dec
(62) |
2011 |
Jan
(114) |
Feb
(139) |
Mar
(126) |
Apr
(51) |
May
(53) |
Jun
(29) |
Jul
(41) |
Aug
(29) |
Sep
(35) |
Oct
(87) |
Nov
(42) |
Dec
(20) |
2012 |
Jan
(111) |
Feb
(66) |
Mar
(35) |
Apr
(59) |
May
(71) |
Jun
(32) |
Jul
(11) |
Aug
(48) |
Sep
(60) |
Oct
(87) |
Nov
(16) |
Dec
(38) |
2013 |
Jan
(5) |
Feb
(19) |
Mar
(41) |
Apr
(47) |
May
(14) |
Jun
(32) |
Jul
(18) |
Aug
(68) |
Sep
(9) |
Oct
(42) |
Nov
(12) |
Dec
(10) |
2014 |
Jan
(14) |
Feb
(139) |
Mar
(137) |
Apr
(66) |
May
(72) |
Jun
(142) |
Jul
(70) |
Aug
(31) |
Sep
(39) |
Oct
(98) |
Nov
(133) |
Dec
(44) |
2015 |
Jan
(70) |
Feb
(27) |
Mar
(36) |
Apr
(11) |
May
(15) |
Jun
(70) |
Jul
(30) |
Aug
(63) |
Sep
(18) |
Oct
(15) |
Nov
(42) |
Dec
(29) |
2016 |
Jan
(37) |
Feb
(48) |
Mar
(59) |
Apr
(28) |
May
(30) |
Jun
(43) |
Jul
(47) |
Aug
(14) |
Sep
(21) |
Oct
(26) |
Nov
(10) |
Dec
(2) |
2017 |
Jan
(26) |
Feb
(27) |
Mar
(44) |
Apr
(11) |
May
(32) |
Jun
(28) |
Jul
(75) |
Aug
(45) |
Sep
(35) |
Oct
(285) |
Nov
(99) |
Dec
(16) |
2018 |
Jan
(8) |
Feb
(8) |
Mar
(42) |
Apr
(35) |
May
(23) |
Jun
(12) |
Jul
(16) |
Aug
(11) |
Sep
(8) |
Oct
(16) |
Nov
(5) |
Dec
(8) |
2019 |
Jan
(9) |
Feb
(28) |
Mar
(4) |
Apr
(10) |
May
(7) |
Jun
(4) |
Jul
(4) |
Aug
|
Sep
(4) |
Oct
|
Nov
(23) |
Dec
(3) |
2020 |
Jan
(19) |
Feb
(3) |
Mar
(22) |
Apr
(17) |
May
(10) |
Jun
(69) |
Jul
(18) |
Aug
(23) |
Sep
(25) |
Oct
(11) |
Nov
(20) |
Dec
(9) |
2021 |
Jan
(1) |
Feb
(7) |
Mar
(9) |
Apr
|
May
(1) |
Jun
(8) |
Jul
(6) |
Aug
(8) |
Sep
(7) |
Oct
|
Nov
(2) |
Dec
(23) |
2022 |
Jan
(23) |
Feb
(9) |
Mar
(9) |
Apr
|
May
(8) |
Jun
(1) |
Jul
(6) |
Aug
(8) |
Sep
(30) |
Oct
(5) |
Nov
(4) |
Dec
(6) |
2023 |
Jan
(2) |
Feb
(5) |
Mar
(7) |
Apr
(3) |
May
(8) |
Jun
(45) |
Jul
(8) |
Aug
|
Sep
(2) |
Oct
(14) |
Nov
(7) |
Dec
(2) |
2024 |
Jan
(4) |
Feb
(4) |
Mar
|
Apr
(7) |
May
(2) |
Jun
(1) |
Jul
|
Aug
(5) |
Sep
|
Oct
|
Nov
(4) |
Dec
(14) |
2025 |
Jan
(22) |
Feb
(6) |
Mar
(5) |
Apr
(14) |
May
(6) |
Jun
(11) |
Jul
(19) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Daniel J S. <dan...@ie...> - 2004-07-07 03:32:53
|
Ethan Merritt wrote: >On Monday 05 July 2004 06:34 pm, Daniel J Sebald wrote: > > >>On the topic of plot window location, anyone >>else find it kind of irksome that a newly created plot window is always >>situated on top of the command line window and completely covering it? >> I'd prefer it to be created as far away from the command line as >>possible, >> >> > > >So? Tell your window manager that. >Or put it in your Xresources file. >My plot windows stack in the upper right corner of the screen. > OK, I've tried a bit of this now. I have SawFish. There are plenty of settings but some have undesirable behavior. One of them is not too bad, called "first-fit", placing windows in corners of the screen and seems to avoid the parent's space. Pretty much what I want, thanks. The focus is a different matter. Someone who uses the gnuplot_x11 window hot keys a lot probably doesn't mind the created plot grabbing the focus. Changing the window manager settings so that "focus on display" is not active helps in gnuplot... but it alters all other window behavior too. The thing is, in most applications you want to grab focus upon display. Say one creates an editor window with "xemacs junk &"; well you're going to type in the editor right away so, yes, "grab focus". But in gnuplot, one isn't going to type in the plot window (unless hot key user) so, no, don't grab focus. I tried creating a patch with XGetInputFocus() and XSetInputFocus() to restore the focus to the parent, i.e., gnuplot command line. But I couldn't get it to work... Not that important. Dan |
From: Daniel J S. <dan...@ie...> - 2004-07-06 15:55:54
|
Hans-Bernhard Broeker wrote: >On Mon, 5 Jul 2004, Daniel J Sebald wrote: > > > >>I tried a hack test to not cast from unsigned int (variable defined) to >>float (PDF_xxx() argument), but rather treat it as signed. >> >> > >I'm a bit uneasy about that change, as described, but that may be because >the description has been a bit vague. Please note you may absolutely >*not* change the signatures of the terminal API entry point functions from >unsigned int to int. That would cause undefined behaviour. What you do >at the interface layer between pdf.trm and libpdf doesn't matter, as long >as it improves things, but the interface between pdf.trm and the rest of >gnuplot should be considered cast in stone. > >Could you please mail me (or the list) that patch for inspection? > No patch. I called it a hack test because it was never intended to be used. It was simply a quick and dirty way of testing whether the PDF driver could handle negative numbers as coordinates (as opposed to the outrageously large wrapped number), which appears to be the case. I think in most C compilers a cast from a signed to unsigned or vice-versa doesn't change the value of the variable in memory, it simply changes how the variable is interpretted by the compiler when it used. So, the number passes all the way to the driver level and it is only when changed to a float as an argument to the PDF_xxx() routines that it is interpretted. I think Ethan's point at the last email was just what you are saying, addressing the signed/unsigned issue is a major alteration and would have to wait a bit. Dan |
From: Hans-Bernhard B. <br...@ph...> - 2004-07-06 12:10:46
|
On Mon, 5 Jul 2004, Ethan Merritt wrote: > Is everyone OK with the idea "if a label is out of bounds don't > try to draw it at all"? Not as a global change affecting all terminals. This is a decision to be made either by the individual driver (if its output format can't allow otherwise), or in terms of user-defined entities. > This would be change, as right now some drivers will draw the piece of > the label that is in-bounds even though the label coordinates themselves > are out of bounds. Exactly. And that is behaviour which long-time users may well be relying on, so it should be preserved, at least as a default. Looks like we need another extention to the 'set clip' control: set clip text or, equivalently, a "clip" option to 'set label' that explicitly request the label to not be output if the reference point is out of bounds. -- Hans-Bernhard Broeker (br...@ph...) Even if all the snow were burnt, ashes would remain. |
From: Hans-Bernhard B. <br...@ph...> - 2004-07-06 11:50:26
|
On Mon, 5 Jul 2004, Ethan Merritt wrote: > On Monday 05 July 2004 05:07 pm, Hans-Bernhard Broeker wrote: > > > > But now I've found a truly ghastly factor influencing one of the problems > > I described: it depends on where the gnuplot text window pops up, relative > > to the current position of the mouse. If the mouse pointer is at rest > > while starting wgnuplot.exe (current version) via the keyboard, and it > > happens to be sitting *inside* the newly popped-up wgnuplot text window, > > the first keypress will be lost. This is insane. > > OK. So it takes one event (does Windows call them "events"?) before > focus is given to the new text window. I'm sure it's not quite that simple. By the time I press a key, at least a dozen events must have been sent to that window (WM_CREATE, WM_PAINT, WM_SETFOCUS, ...). I'm not quite sure, but it *seems* that it also makes a difference if I move the mouse around a bit before hitting that key. > first event is something other than a keypress. Or maybe there is an > explicit "gain focus" call? There is --- it just doesn't seem to take effect. -- Hans-Bernhard Broeker (br...@ph...) Even if all the snow were burnt, ashes would remain. |
From: Hans-Bernhard B. <br...@ph...> - 2004-07-06 11:48:31
|
On Mon, 5 Jul 2004, Daniel J Sebald wrote: > I tried a hack test to not cast from unsigned int (variable defined) to > float (PDF_xxx() argument), but rather treat it as signed. I'm a bit uneasy about that change, as described, but that may be because the description has been a bit vague. Please note you may absolutely *not* change the signatures of the terminal API entry point functions from unsigned int to int. That would cause undefined behaviour. What you do at the interface layer between pdf.trm and libpdf doesn't matter, as long as it improves things, but the interface between pdf.trm and the rest of gnuplot should be considered cast in stone. Could you please mail me (or the list) that patch for inspection? -- Hans-Bernhard Broeker (br...@ph...) Even if all the snow were burnt, ashes would remain. |
From: Ethan M. <merritt@u.washington.edu> - 2004-07-06 01:29:15
|
On Monday 05 July 2004 05:07 pm, Hans-Bernhard Broeker wrote: > > But now I've found a truly ghastly factor influencing one of the problems > I described: it depends on where the gnuplot text window pops up, relative > to the current position of the mouse. If the mouse pointer is at rest > while starting wgnuplot.exe (current version) via the keyboard, and it > happens to be sitting *inside* the newly popped-up wgnuplot text window, > the first keypress will be lost. This is insane. OK. So it takes one event (does Windows call them "events"?) before focus is given to the new text window. That sounds like a Windows bug, pure and simple. Why did it not strike before? I don't know. But the work-around would seem to be to have gnuplot itself generate a junk event of some sort on entry, so that the first event is something other than a keypress. Or maybe there is an explicit "gain focus" call? |
From: Ethan M. <merritt@u.washington.edu> - 2004-07-06 01:25:11
|
On Monday 05 July 2004 06:34 pm, Daniel J Sebald wrote: > On the topic of plot window location, anyone > else find it kind of irksome that a newly created plot window is always > situated on top of the command line window and completely covering it? > I'd prefer it to be created as far away from the command line as > possible, So? Tell your window manager that. Or put it in your Xresources file. My plot windows stack in the upper right corner of the screen. > and not grab focus if not in "raise" mode. I tell KDE not to give focus to a window unless the mouse is in it. If your window manager doesn't allow that, then look for a better one. |
From: Daniel J S. <dan...@ie...> - 2004-07-06 01:12:29
|
> That is a strange one... On the topic of plot window location, anyone > else find it kind of irksome that a newly created plot window is > always situated on top of the command line window and completely > covering it? I'd prefer it to be created as far away from the command > line as possible, and not grab focus if not in "raise" mode. In X11, that is -- D |
From: Daniel J S. <dan...@ie...> - 2004-07-06 01:09:51
|
Hans-Bernhard Broeker wrote: >On Mon, 5 Jul 2004, Hans-Bernhard Broeker wrote: > > > >>>Does the problem still happen if gnuplot is configured with >>>#undef USE_MOUSE ? >>> >>> >>To be experimented with. I'm not even sure the Windows version >>still builds in that configuration... >> >> > >Testing... it almost does. (wpause assumes paused_for_mouse, had to >#ifdef USE_MOUSE that). But it doesn't help to prevent the problem. > >But now I've found a truly ghastly factor influencing one of the problems >I described: it depends on where the gnuplot text window pops up, relative >to the current position of the mouse. If the mouse pointer is at rest >while starting wgnuplot.exe (current version) via the keyboard, and it >happens to be sitting *inside* the newly popped-up wgnuplot text window, >the first keypress will be lost. This is insane. > That is a strange one... On the topic of plot window location, anyone else find it kind of irksome that a newly created plot window is always situated on top of the command line window and completely covering it? I'd prefer it to be created as far away from the command line as possible, and not grab focus if not in "raise" mode. Dan |
From: Daniel J S. <dan...@ie...> - 2004-07-06 00:45:35
|
Hans-Bernhard Broeker wrote: >On Mon, 5 Jul 2004, Daniel J Sebald wrote: > > > >>I don't understand why negative coordinates is an error. Conceptually, >>it's as though our view port is from (0, 0) to (x_max, y_max). >> Certainly there are some situations where the graphical element may >>make no sense to be outside that range. But the decision if that is a >>problem or not lies at the very last use, inside the driver. >> >> > >Not really. The terminal driver can only do what I would refer to as >"emergency clipping". I.e. if a point passed to the driver is outside the >viewport, but the output format can't handle that, the gnuplot terminal >driver will have to deal with that, probably by discarding the entire >primitive being drawn. > I agree with that. That's sort of what I was driving at before. > That appears to be the case for our PDF driver. > I tried a hack test to not cast from unsigned int (variable defined) to float (PDF_xxx() argument), but rather treat it as signed. It seemed to work. So perhaps no extra code will be needed to discard primitives if we are lucky. >[On a side note:] > > >>There is one thing about the terminal scheme that >>doesn't have a solid concept, or at least I don't recognize it. It is >>how to have "default" routines of a driver. >> >> > >That's what the do_whatever() routines in term.c are for. For functions >that are required, a driver can register those directly. It can even >just supply a zero (i.e. a NULL function pointer) and change_term() will >fill in the right default handler. > Ah. I've looked at the term.c file in passing but it never registered with me. >Unfortunately the NULL pointer replacement aspect of this scheme is only >good for one level of inheritance, i.e. there's a single, somewhat virtual >"base" terminal driver, using only the fallback routines, and a given >driver can either use those, or implement its own overrides. For doing >real inheritance, we have to refer to what in C++ parlance would be >caused "mangled" method names, e.g. in epslatex.trm, which registers >the postscript driver's PM3D functions to itself, turning itself into >something of a derived class of post.trm. > Right. Dan > > |
From: Ethan M. <merritt@u.washington.edu> - 2004-07-06 00:09:19
|
On Monday 05 July 2004 05:43 am, Hans-Bernhard Broeker wrote: > IMHO clipping has to be the duty of the callers of map3d_xy, because only > they can possibly know what the right reaction should be, or at least > output an intelligible errors message if they can't seem to find a > reasonable reaction. For now I have put tests for wrap-around (negative value stored in unsigned int) into the two high-level callers place_labels3d() and place_arrows3d(). If wrap-around has occurred, the arrow or label is skipped altogether. This is not true clipping, but it does catch a potentially fatal error that has already been made. Retro-fitting general tests against the current plot boundaries, coupled with proper clipping of line segments, will have to wait for a more general overhaul. |
From: Hans-Bernhard B. <br...@ph...> - 2004-07-06 00:07:37
|
On Mon, 5 Jul 2004, Hans-Bernhard Broeker wrote: > > Does the problem still happen if gnuplot is configured with > > #undef USE_MOUSE ? > > To be experimented with. I'm not even sure the Windows version > still builds in that configuration... Testing... it almost does. (wpause assumes paused_for_mouse, had to #ifdef USE_MOUSE that). But it doesn't help to prevent the problem. But now I've found a truly ghastly factor influencing one of the problems I described: it depends on where the gnuplot text window pops up, relative to the current position of the mouse. If the mouse pointer is at rest while starting wgnuplot.exe (current version) via the keyboard, and it happens to be sitting *inside* the newly popped-up wgnuplot text window, the first keypress will be lost. This is insane. -- Hans-Bernhard Broeker (br...@ph...) Even if all the snow were burnt, ashes would remain. |
From: Hans-Bernhard B. <br...@ph...> - 2004-07-05 23:35:28
|
On Mon, 5 Jul 2004, Daniel J Sebald wrote: > > > Ethan Merritt wrote: > > >Is everyone OK with the idea "if a label is out of bounds don't > >try to draw it at all"? > > > > Not totally. It would be nice that if a partial text string were > supposed to show it would. Unfortunately gnuplot can't do that for the general case. It has no way of knowing which part of a text string will be on the page (--> open bug about decenders getting clipped off of the xlabel text...). -- Hans-Bernhard Broeker (br...@ph...) Even if all the snow were burnt, ashes would remain. |
From: Hans-Bernhard B. <br...@ph...> - 2004-07-05 23:29:18
|
On Mon, 5 Jul 2004, Ethan Merritt wrote: > On Monday 05 July 2004 10:38 am, Daniel J Sebald wrote: > > I don't understand why negative coordinates is an error. > > The error is not the fact that it's negative. The error is that after > stuffing it into an (unsigned int) it looks like a huge positive number > instead. Not quite, IMHO. The fact that casting a negative will result in ridiculously large positive coordinates passed to terminal functions is a *second* error, which is a consequence of the original one: that stuff was output outside the page boundary. > That would be a big change, though. I'm aware of that. If it weren't, I would have insisted on getting that fixed before considering the thing fit for the 4.0 release. But if now isn't the time for big changes, when is? > The problem I've run into is that the PDF library doesn't clip in > these cases, it just causes the program to exit. So our PDF driver *must* do its own "emergency" clipping, no matter what we do in the core routines. -- Hans-Bernhard Broeker (br...@ph...) Even if all the snow were burnt, ashes would remain. |
From: Hans-Bernhard B. <br...@ph...> - 2004-07-05 23:27:20
|
On Mon, 5 Jul 2004, Daniel J Sebald wrote: > I don't understand why negative coordinates is an error. Conceptually, > it's as though our view port is from (0, 0) to (x_max, y_max). > Certainly there are some situations where the graphical element may > make no sense to be outside that range. But the decision if that is a > problem or not lies at the very last use, inside the driver. Not really. The terminal driver can only do what I would refer to as "emergency clipping". I.e. if a point passed to the driver is outside the viewport, but the output format can't handle that, the gnuplot terminal driver will have to deal with that, probably by discarding the entire primitive being drawn. That appears to be the case for our PDF driver. But the globally missing clipping is one that has to be done by the core of gnuplot. It has to be done at a layer of the program where information about what the user intended is still available. Summing it up, map3d_xy would be exactly the wrong place to try and do clipping in: it knows neither the terminal, nor the user's intention. About the only thing this function can do is detect the problem, but it can't administer the cure. [On a side note:] > There is one thing about the terminal scheme that > doesn't have a solid concept, or at least I don't recognize it. It is > how to have "default" routines of a driver. That's what the do_whatever() routines in term.c are for. For functions that are required, a driver can register those directly. It can even just supply a zero (i.e. a NULL function pointer) and change_term() will fill in the right default handler. Unfortunately the NULL pointer replacement aspect of this scheme is only good for one level of inheritance, i.e. there's a single, somewhat virtual "base" terminal driver, using only the fallback routines, and a given driver can either use those, or implement its own overrides. For doing real inheritance, we have to refer to what in C++ parlance would be caused "mangled" method names, e.g. in epslatex.trm, which registers the postscript driver's PM3D functions to itself, turning itself into something of a derived class of post.trm. Hmmm... now that I'm thinking about it, it could be a neat idea to move these "base class" functions into a *.trm driver of their own, if only to get them out of term.c. -- Hans-Bernhard Broeker (br...@ph...) Even if all the snow were burnt, ashes would remain. |
From: Daniel J S. <dan...@ie...> - 2004-07-05 23:03:09
|
Ethan Merritt wrote: >That would be mean changing many lines of code, but other than that >I don't see any intrinsic problem with it. Of course, only a subset >of drivers could actually do anything useful with the negative numbers. > Ethan, As a crude test, I did a mass replace of "unsigned int" by "signed int" in the pdf.trm file and the datastirngs.dem demo seems to run fine. (The conversion to a float in the PDF_xxx() routines is where the wrap-around of the number occurs.)... There are a lot of occurrences of "unsinged int" throughout the software, aren't there? Dan |
From: Daniel J S. <dan...@ie...> - 2004-07-05 22:33:29
|
Ethan Merritt wrote: >On Monday 05 July 2004 02:14 pm, you wrote: > > >>Ethan Merritt wrote: >> >> >>>Is everyone OK with the idea "if a label is out of bounds don't >>>try to draw it at all"? >>> >>> >>Not totally. It would be nice that if a partial text string were >>supposed to show it would. >> >> > >That happens now for some drivers, but only for labels whose >coordinates are out of bounds but still positive. If they go negative >then nothing good can happen. > > > >>I would say that if you pin this down as the >>actual problem and it seems that there is no easy solution, then OK. >> >> > >Huh? I know exactly what the problem is. By the time the coordinates >for the label are passed to libpdf they have already been mangled by >converting them to (unsigned int). > OK, now that I'm getting the PDF float too large error, I see that is the problem. >If you want to allow the general case of labels that start off-screen >but extend into view then we would (I think) have to change all the >coordinates passed to terminal drivers from unsigned to signed. > >That would be mean changing many lines of code, but other than that >I don't see any intrinsic problem with it. Of course, only a subset >of drivers could actually do anything useful with the negative numbers. > That is the first step I would vote for. There will still be some issues, but this idea of constructing a plot with (0,0) as the reference point kind of suggests that negative numbers should be allowed as "work room". Otherwise, it's like an artist starting his or her drawing in the bottom left corner of the canvas. Dan |
From: Daniel J S. <dan...@ie...> - 2004-07-05 22:23:48
|
Ethan Merritt wrote: >On Monday 05 July 2004 02:14 pm, you wrote: > > >>If it seems like it is the PDF utilities fault, then it should be fixed >>there by someone else. >> >> > >I think the chance of us changing the behaviour of a commercial >product, even the free subset of a commercial product, is near >zero. Besides, it offends my sense of aesthetics to screw up the >negative coordinates by wrapping around to huge positive numbers. >Once that happens you can't even clip them properly. > I agree. >>I notice that the 3D case for X11 clips off the bottom >>three labels. I notice that the PostScript output file shows the bottom >>three. I notice that inside the 'test.ps' file the bottom three labels >>(the ones that X11 truncates) have negative y positions associated with >>them. (So, is PostScript expanding the screen to include everything?) >> >> > >That is under the control of your viewer program. >PostScript specifies a bounding box, but the viewer can ignore >that if it chooses to. In ghostview/gv you can toggle the this option >from a menu somewhere. > Oh yeah, I forgot about that? >> I notice that ps2pdf on 'test.ps' produces a 'test.pdf' that works fine >>in Acroread. (Does that imply that translating negative numbers for PDF >>may not really pose a problem?) >> >> > >The problem is not in the PDF file format itself, it's in the libpdf >library routines. ps2pdf doesn't use libpdf. > > > >>I notice in both X11 and PostScript >>that the labels at the very bottom and very top do not have red lines >>drawn to them. Is gnuplot treating the "extent" of the plot to the >>portion inside the labels, and anything beyond that is clipped? >> >> > >Wasn't it you who said just upthread that you thought clipping >should be left to the individual drivers? They don't all do it the same >way (or do it at all, in some cases). If you want a consistent clipping >policy then we would have to move it into the core gnuplot routines >rather than leaving it to the terminal drivers and associated support >libraries. > Yes, but (the politician in me says) I think there are two different issues. In one case you have the consistency of how gnuplot constructs the plot, what that should be I'm not completely sure. At the driver level we are talking a sanity check, and that is where I'm saying map3d_xy() shouldn't be doing that. As for the particular method, I don't know. Maybe if the plot borders are drawn on the plot, then everything should be clipped at the borders. If the borders are not drawn, maybe everything should be clipped at the viewport (or not at all). An option? Dan |
From: Ethan M. <merritt@u.washington.edu> - 2004-07-05 21:48:36
|
On Monday 05 July 2004 02:14 pm, you wrote: > Ethan Merritt wrote: > >Is everyone OK with the idea "if a label is out of bounds don't > >try to draw it at all"? > > Not totally. It would be nice that if a partial text string were > supposed to show it would. That happens now for some drivers, but only for labels whose coordinates are out of bounds but still positive. If they go negative then nothing good can happen. > I would say that if you pin this down as the > actual problem and it seems that there is no easy solution, then OK. Huh? I know exactly what the problem is. By the time the coordinates for the label are passed to libpdf they have already been mangled by converting them to (unsigned int). If you want to allow the general case of labels that start off-screen but extend into view then we would (I think) have to change all the coordinates passed to terminal drivers from unsigned to signed. That would be mean changing many lines of code, but other than that I don't see any intrinsic problem with it. Of course, only a subset of drivers could actually do anything useful with the negative numbers. |
From: Ethan M. <merritt@u.washington.edu> - 2004-07-05 21:40:53
|
On Monday 05 July 2004 02:14 pm, you wrote: > If it seems like it is the PDF utilities fault, then it should be fixed > there by someone else. I think the chance of us changing the behaviour of a commercial product, even the free subset of a commercial product, is near zero. Besides, it offends my sense of aesthetics to screw up the negative coordinates by wrapping around to huge positive numbers. Once that happens you can't even clip them properly. > I notice that the 3D case for X11 clips off the bottom > three labels. I notice that the PostScript output file shows the bottom > three. I notice that inside the 'test.ps' file the bottom three labels > (the ones that X11 truncates) have negative y positions associated with > them. (So, is PostScript expanding the screen to include everything?) That is under the control of your viewer program. PostScript specifies a bounding box, but the viewer can ignore that if it chooses to. In ghostview/gv you can toggle the this option from a menu somewhere. > I notice that ps2pdf on 'test.ps' produces a 'test.pdf' that works fine > in Acroread. (Does that imply that translating negative numbers for PDF > may not really pose a problem?) The problem is not in the PDF file format itself, it's in the libpdf library routines. ps2pdf doesn't use libpdf. > I notice in both X11 and PostScript > that the labels at the very bottom and very top do not have red lines > drawn to them. Is gnuplot treating the "extent" of the plot to the > portion inside the labels, and anything beyond that is clipped? Wasn't it you who said just upthread that you thought clipping should be left to the individual drivers? They don't all do it the same way (or do it at all, in some cases). If you want a consistent clipping policy then we would have to move it into the core gnuplot routines rather than leaving it to the terminal drivers and associated support libraries. |
From: Daniel J S. <dan...@ie...> - 2004-07-05 20:50:45
|
Ethan Merritt wrote: >Is everyone OK with the idea "if a label is out of bounds don't >try to draw it at all"? > Not totally. It would be nice that if a partial text string were supposed to show it would. I would say that if you pin this down as the actual problem and it seems that there is no easy solution, then OK. If it seems like it is the PDF utilities fault, then it should be fixed there by someone else. > This would be change, as right now some >drivers will draw the piece of the label that is in-bounds even though >the label coordinates themselves are out of bounds. > This would be preferred, I think. A few things about the datastrings.dem, because I'm not sure my observations agree with the problem you are describing. First, the demo looks nice. I notice that the 3D case for X11 clips off the bottom three labels. I notice that the PostScript output file shows the bottom three. I notice that inside the 'test.ps' file the bottom three labels (the ones that X11 truncates) have negative y positions associated with them. (So, is PostScript expanding the screen to include everything?) I notice that ps2pdf on 'test.ps' produces a 'test.pdf' that works fine in Acroread. (Does that imply that translating negative numbers for PDF may not really pose a problem?) I notice in both X11 and PostScript that the labels at the very bottom and very top do not have red lines drawn to them. Is gnuplot treating the "extent" of the plot to the portion inside the labels, and anything beyond that is clipped? I would say that the clipping should be part of the visible plot *or* the "plotting region" plot, but not a combination of both as is the case with the labels being visible at the outer regions but not the red lines. Dan |
From: Daniel J S. <dan...@ie...> - 2004-07-05 20:19:32
|
Ethan Merritt wrote: >In principle I agree. But I was hoping for some sort of quick fix for the >blatant error of stuffing negative numbers into an unsigned int. > >An easy example of the current error is the demo I just added. > set term pdf > set output 'test.pdf' > load 'datastrings.dem' > >will exit when it hits the 3D plotting example because one of the labels is >off the bottom of the plot in the initial view setting. > <cr> to plot again using x2ticlabels <cr> to plot again using x2ticlabels <cr> to plot same data from table format <cr> continue PDFlib I/O error: Resource configuration file 'pdflib.upr' not found I'm probably missing something (but my system's been pretty much trouble free with the PDF stuff). This is failing before the 3D plotting example, when everything appears to be visible on the screen. Anyway, I've updated the 'with_image' patch on sourceForge against Ethan's additions. A bit more work integrating the two this time. (Ethan maybe give it a whirl and check if I broke any of your stuff... the 'datastring.dem' demo looks fine as far as I can tell.) Dan |
From: Daniel J S. <dan...@ie...> - 2004-07-05 20:12:54
|
Daniel J Sebald wrote: > What I'm wondering is if you feed the PDF routines, say, -25 instead > of 4294967270 it will know how to properly clip instead of aborting. Or does the PDF library only accept unsigned numbers? Dan |
From: Daniel J S. <dan...@ie...> - 2004-07-05 20:03:17
|
Ethan Merritt wrote: >On Monday 05 July 2004 10:38 am, Daniel J Sebald wrote: > > >>I don't understand why negative coordinates is an error. >> >> > >The error is not the fact that it's negative. The error is that after >stuffing it into an (unsigned int) it looks like a huge positive number >instead. > That I understand. But Hans seems to be implying that even a negative value should be an error. (Or is that not correct Hans?) >>>IMHO clipping has to be the duty of the callers of map3d_xy, because only >>>they can possibly know what the right reaction should be, or at least >>>output an intelligible errors message if they can't seem to find a >>>reasonable reaction. >>> >>> > >That would be a big change, though. Right now we leave a lot of >the clipping to the individual terminal drivers. > Where it should be, I think. (With some type of internal default for drivers that can't handle the clip, but this doesn't exist right now.) >The problem I've run into is that the PDF library doesn't clip in >these cases, it just causes the program to exit. >*Any* solution that leaves you inside gnuplot is better than what >it is doing now. > What I'm wondering is if you feed the PDF routines, say, -25 instead of 4294967270 it will know how to properly clip instead of aborting. Dan |
From: Ethan M. <merritt@u.washington.edu> - 2004-07-05 17:45:57
|
On Monday 05 July 2004 10:38 am, Daniel J Sebald wrote: > I don't understand why negative coordinates is an error. The error is not the fact that it's negative. The error is that after stuffing it into an (unsigned int) it looks like a huge positive number instead. > >IMHO clipping has to be the duty of the callers of map3d_xy, because only > >they can possibly know what the right reaction should be, or at least > >output an intelligible errors message if they can't seem to find a > >reasonable reaction. That would be a big change, though. Right now we leave a lot of the clipping to the individual terminal drivers. The problem I've run into is that the PDF library doesn't clip in these cases, it just causes the program to exit. *Any* solution that leaves you inside gnuplot is better than what it is doing now. |