Re: [Plplot-general] Two subplots on one common page without space between them

2018-06-07 Thread Alan W. Irwin

On 2018-06-07 16:34+0300 Sergey Shcherbina wrote:



Hi!

I found the example where is the method how to draw two subplots on different 
pages.
But I don't know how to remove the space between subplots on one page. Where is 
the
example with this template? In attached files my attempts to do it as it is 
need.


Hi Sergey:

I suggest you adapt the approach at
 which appears to do what you
have described.

Alan
__
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state
implementation for stellar interiors (freeeos.sf.net); the Time
Ephemerides project (timeephem.sf.net); PLplot scientific plotting
software package (plplot.sf.net); the libLASi project
(unifont.org/lasi); the Loads of Linux Links project (loll.sf.net);
and the Linux Brochure Project (lbproject.sf.net).
__

Linux-powered Science
__

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Plplot-general mailing list
Plplot-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-general


Re: [Plplot-general] plplot-wxwidgets-plotting

2018-06-07 Thread David Bergman via Plplot-general
 Phil, 
Thank you very much for the help.  I will try these edits and see how it 
goes.As for specifying the size of the window (as per your last email).  I've 
shied away from that as it screwed up the splitter windows construction I 
had.This suggestion looks like the best route, will let you know how it 
works.David

On Thursday, June 7, 2018, 10:46:44 AM EDT, Phil Rosenberg 
 wrote:  
 
 Hi David again

Just to let you know that a way to get the automatic text sizing to
work correctly without specifying an initial size for your window
would be to wait until the window is displayed to call your Plot
routine. You could do this by catching the first resize event or first
paint event and calling Plot at that point.

Or if you wish to manually set text size you should note that
pls->adv() and pls->env() (which calls plsadv()) reset the size to
what plplot thinks is the best. Hence you must do the work of
pls->env() manually. In your case, replace pls->env() with

 pls->clear();
 pls->vsta();
 pls->wind(xmin, xmax, ymin, ymax);
 pls->schr(5.0, 1.0);
 plbox("bcnst", (PLFLT) 0.0, 0, "bcnstv", (PLFLT) 0.0, 0);
 pls->schr(8.0, 1.0);
 pls->lab("x", "y", "sin(x)/x");

replacing the values 5.0 and 8.0 witht he size you want your numbers
and labels (in mm).

On 7 June 2018 at 14:55, Phil Rosenberg  wrote:
> Hi David
> Sorry, I haven't replied - I've been away and off email for close to a month.
>
> Anyway - the problem is that when you create your wxPLplotwindow using
> the default constructor it gets a size of wxDefaultSize at
> initialisation. This is 20x20 pixels on my Windows system. PLPlot then
> uses this size along with the DPI to calculate the most appropriate
> text size, which comes out at I think about 0.3 mm. This is converted
> to a pt size and used to create a wxFont. One of either of the
> following is happening wxFont only accepts integers for pt size and
> the pt size is less than 1 so gets rounded down to 0 and no text is
> drawn, or the text is sortof there, but it is so small it doesn't
> actually show up.
>
> The easiest workaround is to specify a size at construction time -
> this will change when your frame actually sorts out the sizing of its
> child windows, but that's fine. So something like
>
> m_right = new wxPLplotwindow(true, wxSize(800, 800));
>
> works and the text displays.
>
> You should also be able to manually set the size using pls->schr() in
> your Plot function, but I've just quickly tried that and it didn't
> work. I'll try to investigate why.
>
> Hope that gets you going for now.
>
> Phil
>
>
>
> On 6 June 2018 at 13:01, David Bergman  wrote:
>> Alan,
>>
>> Thanks.  It seems that we're making some progress.  I am working on Windows
>> and I do not get the warning
>> "Somehow we attempted to plot before the wxPLplotwindow was ready. The plot
>> will not be drawn".
>> I get a plot with some missing elements.  I've not tried to build or run in
>> Linux.
>>
>> Thanks for your help,
>> David
>>
>>
>> On 6/6/2018 1:48 AM, Alan W. Irwin wrote:
>>>
>>> On 2018-05-25 15:37-0400 David Bergman wrote:
>>>
 Alan,

 I regret waiting this long to reply but have had a lot of work.
 To tell you the truth I am not sure what exactly caused the issue but
 I've deleted the "wxOVERRIDE" from the code, which was clearly a copy-paste
 from a wxWidgets example.

 I copied the simple.cpp code into the PLplot-Widgets example.

 cmake and nmake both ran find but cmake install generated the following
 fatal error.  Recall that I had quite a bit of trouble getting it to 
 install
 the first time and I may have missed an option that is required.  Not sure
 if my error is due to the same issue that caused your error.


 Install the project...
 -- Install configuration: "Debug"
 -- Installing: C:/Program Files (x86)/plplot/share/doc/plplot/ABOUT
 CMake Error at cmake_install.cmake:39 (file):
  file INSTALL cannot copy file "C:/plplot-5.13.0/ABOUT" to "C:/Program
 Files
  (x86)/plplot/share/doc/plplot/ABOUT".


 NMAKE : fatal error U1077: 'echo' : return code '0x1'
 Stop.
>>>
>>>
>>> Hi David:
>>>
>>> In my case, it was configuration of a new computer which kept me from
>>> replying to what you said above in a timely way.  My apologies for that
>>> delay.  But that new computer configuration has now been a success (I
>>> am writing this from the new computer and PLplot also builds
>>> on that new computer) so I now have a chance to answer you.
>>>
>>> I think the nmake trouble you are having is due to the (default) install
>>> prefix
>>> "C:/Program Files (x86)" having a blank in the path.  I think all those
>>> "blank in
>>> path" issues are now gone in the git version of PLplot so please try that
>>> not
>>> only for that reason but also because that is the version of PLplot I test
>>> with
>>> in any case.
>>>
>>> I tried a similar test (copying simple.cpp on top of
>>> 

Re: [Plplot-general] plplot-wxwidgets-plotting

2018-06-07 Thread Phil Rosenberg
Hi David again

Just to let you know that a way to get the automatic text sizing to
work correctly without specifying an initial size for your window
would be to wait until the window is displayed to call your Plot
routine. You could do this by catching the first resize event or first
paint event and calling Plot at that point.

Or if you wish to manually set text size you should note that
pls->adv() and pls->env() (which calls plsadv()) reset the size to
what plplot thinks is the best. Hence you must do the work of
pls->env() manually. In your case, replace pls->env() with

 pls->clear();
 pls->vsta();
 pls->wind(xmin, xmax, ymin, ymax);
 pls->schr(5.0, 1.0);
 plbox("bcnst", (PLFLT) 0.0, 0, "bcnstv", (PLFLT) 0.0, 0);
 pls->schr(8.0, 1.0);
 pls->lab("x", "y", "sin(x)/x");

replacing the values 5.0 and 8.0 witht he size you want your numbers
and labels (in mm).

On 7 June 2018 at 14:55, Phil Rosenberg  wrote:
> Hi David
> Sorry, I haven't replied - I've been away and off email for close to a month.
>
> Anyway - the problem is that when you create your wxPLplotwindow using
> the default constructor it gets a size of wxDefaultSize at
> initialisation. This is 20x20 pixels on my Windows system. PLPlot then
> uses this size along with the DPI to calculate the most appropriate
> text size, which comes out at I think about 0.3 mm. This is converted
> to a pt size and used to create a wxFont. One of either of the
> following is happening wxFont only accepts integers for pt size and
> the pt size is less than 1 so gets rounded down to 0 and no text is
> drawn, or the text is sortof there, but it is so small it doesn't
> actually show up.
>
> The easiest workaround is to specify a size at construction time -
> this will change when your frame actually sorts out the sizing of its
> child windows, but that's fine. So something like
>
> m_right = new wxPLplotwindow(true, wxSize(800, 800));
>
> works and the text displays.
>
> You should also be able to manually set the size using pls->schr() in
> your Plot function, but I've just quickly tried that and it didn't
> work. I'll try to investigate why.
>
> Hope that gets you going for now.
>
> Phil
>
>
>
> On 6 June 2018 at 13:01, David Bergman  wrote:
>> Alan,
>>
>> Thanks.  It seems that we're making some progress.  I am working on Windows
>> and I do not get the warning
>> "Somehow we attempted to plot before the wxPLplotwindow was ready. The plot
>> will not be drawn".
>> I get a plot with some missing elements.  I've not tried to build or run in
>> Linux.
>>
>> Thanks for your help,
>> David
>>
>>
>> On 6/6/2018 1:48 AM, Alan W. Irwin wrote:
>>>
>>> On 2018-05-25 15:37-0400 David Bergman wrote:
>>>
 Alan,

 I regret waiting this long to reply but have had a lot of work.
 To tell you the truth I am not sure what exactly caused the issue but
 I've deleted the "wxOVERRIDE" from the code, which was clearly a copy-paste
 from a wxWidgets example.

 I copied the simple.cpp code into the PLplot-Widgets example.

 cmake and nmake both ran find but cmake install generated the following
 fatal error.  Recall that I had quite a bit of trouble getting it to 
 install
 the first time and I may have missed an option that is required.  Not sure
 if my error is due to the same issue that caused your error.


 Install the project...
 -- Install configuration: "Debug"
 -- Installing: C:/Program Files (x86)/plplot/share/doc/plplot/ABOUT
 CMake Error at cmake_install.cmake:39 (file):
  file INSTALL cannot copy file "C:/plplot-5.13.0/ABOUT" to "C:/Program
 Files
  (x86)/plplot/share/doc/plplot/ABOUT".


 NMAKE : fatal error U1077: 'echo' : return code '0x1'
 Stop.
>>>
>>>
>>> Hi David:
>>>
>>> In my case, it was configuration of a new computer which kept me from
>>> replying to what you said above in a timely way.  My apologies for that
>>> delay.  But that new computer configuration has now been a success (I
>>> am writing this from the new computer and PLplot also builds
>>> on that new computer) so I now have a chance to answer you.
>>>
>>> I think the nmake trouble you are having is due to the (default) install
>>> prefix
>>> "C:/Program Files (x86)" having a blank in the path.  I think all those
>>> "blank in
>>> path" issues are now gone in the git version of PLplot so please try that
>>> not
>>> only for that reason but also because that is the version of PLplot I test
>>> with
>>> in any case.
>>>
>>> I tried a similar test (copying simple.cpp on top of
>>> examples/c++/wxPLplotDemo.cpp) here,
>>> but in my case I configured PLplot with the cmake option -DBUILD_TEST=ON
>>> which
>>> allows users to test in the build tree without having to install. The
>>> result on
>>> my new Debian Buster platform was I could build and run simple.cpp using
>>> "make test_wxPLplotDemo".  That test had two key warnings which were
>>>
>>> Gtk-Message: 22:23:32.181: GtkDialog mapped without a 

Re: [Plplot-general] plplot-wxwidgets-plotting

2018-06-07 Thread Phil Rosenberg
Hi David
Sorry, I haven't replied - I've been away and off email for close to a month.

Anyway - the problem is that when you create your wxPLplotwindow using
the default constructor it gets a size of wxDefaultSize at
initialisation. This is 20x20 pixels on my Windows system. PLPlot then
uses this size along with the DPI to calculate the most appropriate
text size, which comes out at I think about 0.3 mm. This is converted
to a pt size and used to create a wxFont. One of either of the
following is happening wxFont only accepts integers for pt size and
the pt size is less than 1 so gets rounded down to 0 and no text is
drawn, or the text is sortof there, but it is so small it doesn't
actually show up.

The easiest workaround is to specify a size at construction time -
this will change when your frame actually sorts out the sizing of its
child windows, but that's fine. So something like

m_right = new wxPLplotwindow(true, wxSize(800, 800));

works and the text displays.

You should also be able to manually set the size using pls->schr() in
your Plot function, but I've just quickly tried that and it didn't
work. I'll try to investigate why.

Hope that gets you going for now.

Phil



On 6 June 2018 at 13:01, David Bergman  wrote:
> Alan,
>
> Thanks.  It seems that we're making some progress.  I am working on Windows
> and I do not get the warning
> "Somehow we attempted to plot before the wxPLplotwindow was ready. The plot
> will not be drawn".
> I get a plot with some missing elements.  I've not tried to build or run in
> Linux.
>
> Thanks for your help,
> David
>
>
> On 6/6/2018 1:48 AM, Alan W. Irwin wrote:
>>
>> On 2018-05-25 15:37-0400 David Bergman wrote:
>>
>>> Alan,
>>>
>>> I regret waiting this long to reply but have had a lot of work.
>>> To tell you the truth I am not sure what exactly caused the issue but
>>> I've deleted the "wxOVERRIDE" from the code, which was clearly a copy-paste
>>> from a wxWidgets example.
>>>
>>> I copied the simple.cpp code into the PLplot-Widgets example.
>>>
>>> cmake and nmake both ran find but cmake install generated the following
>>> fatal error.  Recall that I had quite a bit of trouble getting it to install
>>> the first time and I may have missed an option that is required.  Not sure
>>> if my error is due to the same issue that caused your error.
>>>
>>>
>>> Install the project...
>>> -- Install configuration: "Debug"
>>> -- Installing: C:/Program Files (x86)/plplot/share/doc/plplot/ABOUT
>>> CMake Error at cmake_install.cmake:39 (file):
>>>  file INSTALL cannot copy file "C:/plplot-5.13.0/ABOUT" to "C:/Program
>>> Files
>>>  (x86)/plplot/share/doc/plplot/ABOUT".
>>>
>>>
>>> NMAKE : fatal error U1077: 'echo' : return code '0x1'
>>> Stop.
>>
>>
>> Hi David:
>>
>> In my case, it was configuration of a new computer which kept me from
>> replying to what you said above in a timely way.  My apologies for that
>> delay.  But that new computer configuration has now been a success (I
>> am writing this from the new computer and PLplot also builds
>> on that new computer) so I now have a chance to answer you.
>>
>> I think the nmake trouble you are having is due to the (default) install
>> prefix
>> "C:/Program Files (x86)" having a blank in the path.  I think all those
>> "blank in
>> path" issues are now gone in the git version of PLplot so please try that
>> not
>> only for that reason but also because that is the version of PLplot I test
>> with
>> in any case.
>>
>> I tried a similar test (copying simple.cpp on top of
>> examples/c++/wxPLplotDemo.cpp) here,
>> but in my case I configured PLplot with the cmake option -DBUILD_TEST=ON
>> which
>> allows users to test in the build tree without having to install. The
>> result on
>> my new Debian Buster platform was I could build and run simple.cpp using
>> "make test_wxPLplotDemo".  That test had two key warnings which were
>>
>> Gtk-Message: 22:23:32.181: GtkDialog mapped without a transient parent.
>> This is discouraged.
>>
>> on the command line + a dialog box with the following contents:
>>
>> "Somehow we attempted to plot before the wxPLplotwindow was ready.  The
>> plot will not be drawn".
>>
>> And indeed that was followed by a blank plot.  So it appears your
>> simple.cpp is still
>> not set up correctly for the Linux case.
>>
>> I have put this thread back on the plplot-general list because Phil
>> Rosenberg, the author of the PLplot wxwidgets binding and device may
>> wish to comment since he had similar "waiting for events" trouble in
>> the past on Linux which might be related to what I am seeing on Linux with
>> the current simple.cpp.
>>
>> Alan
>> __
>> Alan W. Irwin
>>
>> Astronomical research affiliation with Department of Physics and
>> Astronomy,
>> University of Victoria (astrowww.phys.uvic.ca).
>>
>> Programming affiliations with the FreeEOS equation-of-state
>> implementation for stellar interiors (freeeos.sf.net); the Time
>> Ephemerides project (timeephem.sf.net); PLplot