[Scilab-users] plotplots() in Scilab

classic Classic list List threaded Threaded
8 messages Options
Samuel GOUGEON Samuel GOUGEON
Reply | Threaded
Open this post in threaded view
|

[Scilab-users] plotplots() in Scilab

Dear all,

I would like to propose to include the plotplots() graphical function into Scilab.

For now 3 years, plotplots() is distributed alone in its own external module, with a fair number of downloads for a single function.

Its embedded documentation is as well provided online as PDF, in english and in french.

As soon as a function has a local singularity or/and an asymptotical behavior (that's quite common), plotplots() is very helpful to illustrate its specific behaviors without masking more "regular" features with a crushing graphical scale.

Every comment is welcome about the current plotplots status, and about the proposal to include it as a native Scilab function.


Hope reading you,

Best regards

Samuel


_______________________________________________
users mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users
Clément David-3 Clément David-3
Reply | Threaded
Open this post in threaded view
|

Re: plotplots() in Scilab

Hello Samuel, hello all,

 

First thanks for the request for inclusion, that’s always good to have more features into Scilab itself. However, I have a few remarks regarding this function.

 

  1. The function name plotplots() does not seem well known nor easy to find ; after a few research I found similar behavior for Matlab and Matplotlib worded as “zoomed” or “zoomed_inset_axes” which better represent the behavior.

 

What about using `plot_zoomed()`, `plot_inset()` or `plot_inside()` ?

 

  1. I found the need to have a second axe (example 1) different to recompute ticks (example 2). I might have miss something, could you clarify these two usage ?

 

Thanks,

 

Clément

 

 

From: users <[hidden email]> On Behalf Of Samuel Gougeon
Sent: Thursday, April 1, 2021 10:07 PM
To: International users mailing list for Scilab. <[hidden email]>
Subject: [Scilab-users] plotplots() in Scilab

 

Dear all,

I would like to propose to include the plotplots() graphical function into Scilab.

For now 3 years, plotplots() is distributed alone in its own external module, with a fair number of downloads for a single function.

Its embedded documentation is as well provided online as PDF, in english and in french.

As soon as a function has a local singularity or/and an asymptotical behavior (that's quite common), plotplots() is very helpful to illustrate its specific behaviors without masking more "regular" features with a crushing graphical scale.

Every comment is welcome about the current plotplots status, and about the proposal to include it as a native Scilab function.


Hope reading you,

Best regards

Samuel


_______________________________________________
users mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users
Denis Crété Denis Crété
Reply | Threaded
Open this post in threaded view
|

Re: plotplots() in Scilab

Hello,

 

I am also in favour of including this function in Scilab, with an “improved” name. However, as far as I know, an inset has very frequently its own pair of axes, as opposed to a ticks-switching in (only one of) the axes. Thus, I would not recommend a name with “inset” and reserve it for a function more closely implementing an inset.

Zoom is quite appealing.

I was wondering about “non-linear”_something…

 

Thank you for your developments

Denis

 

De : users <[hidden email]> De la part de Clément David
Envoyé : vendredi 2 avril 2021 11:20
À : sgougeon@fr
ee.fr; Users mailing list for Scilab <[hidden email]>
Objet : Re: [Scilab-users] plotplots() in Scilab

 

Hello Samuel, hello all,

 

First thanks for the request for inclusion, that’s always good to have more features into Scilab itself. However, I have a few remarks regarding this function.

 

1.       The function name plotplots() does not seem well known nor easy to find ; after a few research I found similar behavior for Matlab and Matplotlib worded as “zoomed” or “zoomed_inset_axes” which better represent the behavior.

·       https://stackoverflow.com/questions/13583153/how-to-zoomed-a-portion-of-image-and-insert-in-the-same-plot-in-matplotlib

·       https://fr.mathworks.com/matlabcentral/fileexchange/59857-zoomplot

·       https://fr.mathworks.com/matlabcentral/answers/349042-zoomed-plot-in-the-same-figure

 

What about using `plot_zoomed()`, `plot_inset()` or `plot_inside()` ?

 

2.       I found the need to have a second axe (example 1) different to recompute ticks (example 2). I might have miss something, could you clarify these two usage ?

 

Thanks,

 

Clément

 

 

From: users <[hidden email]> On Behalf Of Samuel Gougeon
Sent: Thursday, April 1, 2021 10:07 PM
To: International users mailing list for Scilab. <
[hidden email]>
Subject: [Scilab-users] plotplots() in Scilab

 

Dear all,

I would like to propose to include the plotplots() graphical function into Scilab.

For now 3 years, plotplots() is distributed alone in its
own external module, with a fair number of downloads for a single function.

Its embedded documentation is as well provided online as PDF,
in english and in french.

As soon as a function has a local singularity or/and an asymptotical behavior (that's quite common), plotplots() is very helpful to illustrate its specific behaviors without masking more "regular" features with a crushing graphical scale.

Every comment is welcome about the current plotplots status, and about the proposal to include it as a native Scilab function.


Hope reading you,

Best regards

Samuel


_______________________________________________
users mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users
Denis Crété
Antoine Monmayrant Antoine Monmayrant
Reply | Threaded
Open this post in threaded view
|

Re: plotplots() in Scilab


On 02/04/2021 12:16, CRETE Denis wrote:

Hello,

 

I am also in favour of including this function in Scilab, with an “improved” name. However, as far as I know, an inset has very frequently its own pair of axes, as opposed to a ticks-switching in (only one of) the axes. Thus, I would not recommend a name with “inset” and reserve it for a function more closely implementing an inset.

Zoom is quite appealing.

I was wondering about “non-linear”_something…

Hello Denis,

I'm with you here: this should be included, but the name is not well matching the features of the function.
Indeed, 'inset' is not at all what 'plot_plot' is offering.
I was also thinking about "non-linear-axis" or something like that, but I am not sure such a name will improve discoverability of the function.
But you are right: this is about having non-regular or non-linear axis.

nonlinear-plot ? non-regular-plot ? All this is not convincing for me...

By the way, we have developed some ugly hacks in the past to get 'non-linear' or 'non-regular' colormaps for the same reason than Samuel.
The idea was to rescale the data to Sgrayplot such that one could map exact intermediate Z_values to some colors of existing or new colormap:

[0, 0.1, 1, 2, 100] -> [black, red, orange, yellow, white]

One of the key advantage is that you could be sure that a certain value (like z=0) was exactly corresponding to a certain color (like white) which is sometime necessary (for plotting  asymmetric waves or fields with a red-white-blue colormap for example).

Antoine

 

Thank you for your developments

Denis

 

De : users [hidden email] De la part de Clément David
Envoyé : vendredi 2 avril 2021 11:20
À : sgougeon@fr
ee.fr; Users mailing list for Scilab [hidden email]
Objet : Re: [Scilab-users] plotplots() in Scilab

 

Hello Samuel, hello all,

 

First thanks for the request for inclusion, that’s always good to have more features into Scilab itself. However, I have a few remarks regarding this function.

 

1.       The function name plotplots() does not seem well known nor easy to find ; after a few research I found similar behavior for Matlab and Matplotlib worded as “zoomed” or “zoomed_inset_axes” which better represent the behavior.

·       https://stackoverflow.com/questions/13583153/how-to-zoomed-a-portion-of-image-and-insert-in-the-same-plot-in-matplotlib

·       https://fr.mathworks.com/matlabcentral/fileexchange/59857-zoomplot

·       https://fr.mathworks.com/matlabcentral/answers/349042-zoomed-plot-in-the-same-figure

 

What about using `plot_zoomed()`, `plot_inset()` or `plot_inside()` ?

 

2.       I found the need to have a second axe (example 1) different to recompute ticks (example 2). I might have miss something, could you clarify these two usage ?

 

Thanks,

 

Clément

 

 

From: users <[hidden email]> On Behalf Of Samuel Gougeon
Sent: Thursday, April 1, 2021 10:07 PM
To: International users mailing list for Scilab. <
[hidden email]>
Subject: [Scilab-users] plotplots() in Scilab

 

Dear all,

I would like to propose to include the plotplots() graphical function into Scilab.

For now 3 years, plotplots() is distributed alone in its
own external module, with a fair number of downloads for a single function.

Its embedded documentation is as well provided online as PDF,
in english and in french.

As soon as a function has a local singularity or/and an asymptotical behavior (that's quite common), plotplots() is very helpful to illustrate its specific behaviors without masking more "regular" features with a crushing graphical scale.

Every comment is welcome about the current plotplots status, and about the proposal to include it as a native Scilab function.


Hope reading you,

Best regards

Samuel


_______________________________________________
users mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users

_______________________________________________
users mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users
Samuel GOUGEON Samuel GOUGEON
Reply | Threaded
Open this post in threaded view
|

Re: plotplots() in Scilab

Dear all,

Thanks for your first feedbacks. I am somewhat answering in the body of this message:

Le 02/04/2021 à 14:49, Antoine Monmayrant a écrit :
On 02/04/2021 12:16, CRETE Denis wrote:

Hello,

 

I am also in favour of including this function in Scilab, with an “improved” name. However, as far as I know, an inset has very frequently its own pair of axes, as opposed to a ticks-switching in (only one of) the axes. Thus, I would not recommend a name with “inset” and reserve it for a function more closely implementing an inset.

Zoom is quite appealing.

I was wondering about “non-linear”_something…

Hello Denis,

I'm with you here: this should be included, but the name is not well matching the features of the function.
Indeed, 'inset' is not at all what 'plot_plot' is offering.
I was also thinking about "non-linear-axis" or something like that, but I am not sure such a name will improve discoverability of the function.
But you are right: this is about having non-regular or non-linear axis.

nonlinear-plot ? non-regular-plot ? All this is not convincing for me...

You know, i thought very hard about the plotplots() naming before finding and choosing this one and first publishing it ;-))

Indeed, plotplots() is not at all about insets, although an actually zooming inset plotting separate function could also be useful (with the zooming box and possibly rays linking it to the inset).

plotplots() is not about zooming or non-linear axis either: it can be used with different and only linear scales, without mixing log and lin ones.
So why "plotplots"? Typing "plot" in Google Translate (from english to french), i've got and we still get:

So "plots" is very frequently used with the meanings "parcels, pieces, patches, particles, shreds".
To me, this is just the right one, close to what the function actually addresses: plotting several parcels/pieces/patches of some given graphics.
This led me to this compact -- and i think talkative and meaningful -- plotplots() name, that's not (only) a word game.

Other names i thought about were with "multiscaled", or thinks like "plot_multiscale". But to me, this could lead to some confusion with multiple axes covering the same whole graphic, as documented @ https://help.scilab.org/docs/6.1.0/en_US/plot_multiscaled.html.

That's (almost) the whole story about this plotplots() name.
Is it more meaningful to you?

Samuel



_______________________________________________
users mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users
Samuel GOUGEON Samuel GOUGEON
Reply | Threaded
Open this post in threaded view
|

Re: plotplots() in Scilab

In reply to this post by Clément David-3
Le 02/04/2021 à 11:19, Clément David a écrit :
../.. 
  1. I found the need to have a second axe (example 1) different to recompute ticks (example 2). I might have miss something, could you clarify these two usage ?

I am afraid to not understand your query. Could you elaborate, please?



_______________________________________________
users mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users
Samuel GOUGEON Samuel GOUGEON
Reply | Threaded
Open this post in threaded view
|

Re: plotplots() in Scilab

In reply to this post by Samuel GOUGEON
Hello,

Le 02/04/2021 à 17:15, Samuel Gougeon a écrit :
Dear all,

Thanks for your first feedbacks. I am somewhat answering in the body of this message:

Le 02/04/2021 à 14:49, Antoine Monmayrant a écrit :
On 02/04/2021 12:16, CRETE Denis wrote:

Hello,

 

I am also in favour of including this function in Scilab, with an “improved” name. However, as far as I know, an inset has very frequently its own pair of axes, as opposed to a ticks-switching in (only one of) the axes. Thus, I would not recommend a name with “inset” and reserve it for a function more closely implementing an inset.

Zoom is quite appealing.

I was wondering about “non-linear”_something…

Hello Denis,

I'm with you here: this should be included, but the name is not well matching the features of the function.
Indeed, 'inset' is not at all what 'plot_plot' is offering.
I was also thinking about "non-linear-axis" or something like that, but I am not sure such a name will improve discoverability of the function.
But you are right: this is about having non-regular or non-linear axis.

nonlinear-plot ? non-regular-plot ? All this is not convincing for me...

You know, i thought very hard about the plotplots() naming before finding and choosing this one and first publishing it ;-))

Indeed, plotplots() is not at all about insets, although an actually zooming inset plotting separate function could also be useful (with the zooming box and possibly rays linking it to the inset).

plotplots() is not about zooming or non-linear axis either: it can be used with different and only linear scales, without mixing log and lin ones.
So why "plotplots"? Typing "plot" in Google Translate (from english to french), i've got and we still get:

<Google's screenshot>

So "plots" is very frequently used with the meanings "parcels, pieces, patches, particles, shreds".
To me, this is just the right one, close to what the function actually addresses: plotting several parcels/pieces/patches of some given graphics.
This led me to this compact -- and i think talkative and meaningful -- plotplots() name, that's not (only) a word game.

Other names i thought about were with "multiscaled", or thinks like "plot_multiscale". But to me, this could lead to some confusion with multiple axes covering the same whole graphic, as documented @ https://help.scilab.org/docs/6.1.0/en_US/plot_multiscaled.html.

That's (almost) the whole story about this plotplots() name.
Is it more meaningful to you?


Apparently, the current plotplots() name used for 3 years is not so bad. I agree with Denis in private mail that it could be a bit more specific. Here are some other name suggestions:

cutaxes
plotcutaxes
plotslicedaxes
slicedaxes
slice_axes
sliceaxes
plotfractional

cutaxes() would have my own preferences:

  • the "plot" prefix is not really required, as "axes" already clearly refers to graphics. Moreover, plotplots() works as well on an already plotted axes, to somewhat post-process it by cutting and presenting it in another way. Actually, that's the main job of the function, even when data to plot are provided instead of an already plotted axes.

  • it's short, and it clearly tells what it does and the result

By the way, "cutaxes" almost means "cute axes" (with a french accent :-)

After including the function in Scilab, the current plotplots as external ATOMS module will no longer be maintained. If plotplots() is renamed into cutaxes(), current plotplots() users will have to rename it in their existing codes. This should not be a big deal, since a find/replace will be able to detect occurrences and replace them.

Final comments, suggestions and other feedbacks are still welcome!

Samuel


_______________________________________________
users mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users
Claus Futtrup Claus Futtrup
Reply | Threaded
Open this post in threaded view
|

Re: plotplots() in Scilab


I think cutaxes() will be a great extension of capabilities in Scilab.

/Claus

On 09-04-2021 17:19, Samuel Gougeon wrote:
Hello,

Le 02/04/2021 à 17:15, Samuel Gougeon a écrit :
Dear all,

Thanks for your first feedbacks. I am somewhat answering in the body of this message:

Le 02/04/2021 à 14:49, Antoine Monmayrant a écrit :
On 02/04/2021 12:16, CRETE Denis wrote:

Hello,

 

I am also in favour of including this function in Scilab, with an “improved” name. However, as far as I know, an inset has very frequently its own pair of axes, as opposed to a ticks-switching in (only one of) the axes. Thus, I would not recommend a name with “inset” and reserve it for a function more closely implementing an inset.

Zoom is quite appealing.

I was wondering about “non-linear”_something…

Hello Denis,

I'm with you here: this should be included, but the name is not well matching the features of the function.
Indeed, 'inset' is not at all what 'plot_plot' is offering.
I was also thinking about "non-linear-axis" or something like that, but I am not sure such a name will improve discoverability of the function.
But you are right: this is about having non-regular or non-linear axis.

nonlinear-plot ? non-regular-plot ? All this is not convincing for me...

You know, i thought very hard about the plotplots() naming before finding and choosing this one and first publishing it ;-))

Indeed, plotplots() is not at all about insets, although an actually zooming inset plotting separate function could also be useful (with the zooming box and possibly rays linking it to the inset).

plotplots() is not about zooming or non-linear axis either: it can be used with different and only linear scales, without mixing log and lin ones.
So why "plotplots"? Typing "plot" in Google Translate (from english to french), i've got and we still get:

<Google's screenshot>

So "plots" is very frequently used with the meanings "parcels, pieces, patches, particles, shreds".
To me, this is just the right one, close to what the function actually addresses: plotting several parcels/pieces/patches of some given graphics.
This led me to this compact -- and i think talkative and meaningful -- plotplots() name, that's not (only) a word game.

Other names i thought about were with "multiscaled", or thinks like "plot_multiscale". But to me, this could lead to some confusion with multiple axes covering the same whole graphic, as documented @ https://help.scilab.org/docs/6.1.0/en_US/plot_multiscaled.html.

That's (almost) the whole story about this plotplots() name.
Is it more meaningful to you?


Apparently, the current plotplots() name used for 3 years is not so bad. I agree with Denis in private mail that it could be a bit more specific. Here are some other name suggestions:

cutaxes
plotcutaxes
plotslicedaxes
slicedaxes
slice_axes
sliceaxes
plotfractional

cutaxes() would have my own preferences:

  • the "plot" prefix is not really required, as "axes" already clearly refers to graphics. Moreover, plotplots() works as well on an already plotted axes, to somewhat post-process it by cutting and presenting it in another way. Actually, that's the main job of the function, even when data to plot are provided instead of an already plotted axes.

  • it's short, and it clearly tells what it does and the result

By the way, "cutaxes" almost means "cute axes" (with a french accent :-)

After including the function in Scilab, the current plotplots as external ATOMS module will no longer be maintained. If plotplots() is renamed into cutaxes(), current plotplots() users will have to rename it in their existing codes. This should not be a big deal, since a find/replace will be able to detect occurrences and replace them.

Final comments, suggestions and other feedbacks are still welcome!

Samuel


_______________________________________________
users mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users



_______________________________________________
users mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users