Re: zooming interactively graphs in a multiplot

Ethan Merritt <[email protected]> Fri, 08 Oct 2021 09:48:23 -0700
Newsgroups gmane.comp.graphics.gnuplot.user
Message-ID <2590817.gmXjU2v1Qr@stonelion>
On Friday, 8 October 2021 03:17:02 PDT theozh wrote:
> Dear Ruda,
> 
> yes, this is my current understanding.
> Actually, the improved solution Friedrich proposed (https://stackoverflow.com/a/62170512/7295599) based on my initial workaround is (currently) the most convenient option I know of. As I understand, you want to zoom in/out interactively into indiviual sub-plots.
> Maybe one could think of a very ugly and lengthy workaround, depending on the layout of your multiplot.
> But in general, I don't see this option without changes in the gnuplot source code. For this you have to ask the developers of gnuplot.

The basic limitation that hits "set multiplot" is that
gnuplot does not keep a history of session state;
it only stores the state of the current plot, i.e. the
result of the most recent 'plot' or 'splot' command.

This limitation can be bypassed for web-based (actually
browser-based) plot display applications, because you can
embed more than one plot in a single xml/html page without
using "set multiplot".  The gnuplot demo pages for
svg and canvas terminal are an example of this.

   http://gnuplot.sourceforge.net/demo_svg_5.5/
   http://gnuplot.sourceforge.net/demo_canvas_5.5/

In these cases the zooming is handled by a separate snippet of
javascript code for each plot including the current zoom state.
Gnuplot itself doesn't know anything about it obviously, since the
plots are displayed by a separate program.  The demo pages are
not laid out in a grid like typical multiplot output but
that's just a choice made by the script that creates them;
you could arrange the plots in a grid if you prefer.
The canvas terminal output support could be supplemented by
hot-key handling. The demo pages do not show an example of that.
I have not figured out how to present hot keys for svg output;
suggestions there would be welcome.

One more thought:

Although gnuplot does not keep a history of program state,
is does keep a history of commands.  You can reproduce a
full multiplot rather laboriously by stepping back through the
command history and re-executing the commands one-by-one that
originally created it.  A possible new program feature would
be to internally flag the first and last commands of a
multiplot sequence and allow the user to re-execute the
comple set in one go.  That would at least provide the
equivalent of a "remultiplot" command.
Unfortunately it wouldn't help with zooming.

	Ethan

> best,
> Theo.
> 
> Am 08.10.2021 um 09:25 schrieb Rudolf Sykora:
> > Dear Theozh,
> >
> > theozh <[email protected]> writes:
> >
> >> Maybe this is helpful to you...
> >> https://stackoverflow.com/a/62166263/7295599
> >
> > thanks for your reply. So the answer is mostly that gnuplot is not
> > smoothly capable of what I want, and what you show in your post is kind
> > of a workaround (which I do not like much).
> >
> > Thank you.
> > Best regards
> > Ruda
> >
> >>
> >> Am 07.10.2021 um 12:04 schrieb Rudolf Sykora via gnuplot-info:
> >>> Hello,
> >>>
> >>>
> >>> I could not find an answer anywhere...
> >>>
> >>> I use the x11 terminal with a multiplot to draw several graphs. Is it
> >>> possible to zoom in/out the individual graphs (with mouse 3rd button,
> >>> keypresses of u/a/n/p etc.) At this moment, when I try to zoom in one
> >>> graph, the zooming is performed but the graph suddenly occupies the
> >>> whole canvas and I cannot see the other graphs of the multiplot.
> >>>
> >>>
> >>> Thanks for comments!
> >>>
> >>> Best regards,
> >>> Rudolf Sykora
> >>
> >>
> >>
> >> _______________________________________________
> >> gnuplot-info mailing list
> >> [email protected]
> >> Membership management via: https://lists.sourceforge.net/lists/listinfo/gnuplot-info
> >
> 
> 
> _______________________________________________
> gnuplot-info mailing list
> [email protected]
> Membership management via: https://lists.sourceforge.net/lists/listinfo/gnuplot-info
> 






_______________________________________________
gnuplot-info mailing list
[email protected]
Membership management via: https://lists.sourceforge.net/lists/listinfo/gnuplot-info