Hello Federico,

Le 06/04/2019 à 00:27, Federico Miyara a écrit :

Dear All,

I have the following problem with the graphic axes property clip_state. I don't know if comes from an inaccurate description in the documentation or something I'm not understanding quite well...

1) I create new axes by plotting some data set. As expected, axes' size matches the plot data range.

2) I run

gca().clip_state = "off"

Acording to the documentation (https://help.scilab.org/docs/6.0.2/en_US/axes_properties.html), from now on all newly created objects should not clip, meaning that even if the object (such as a polyline) exceeds the original data range, it will be displayed in full.

3) I plot another data set that exceeds the original axes limits. Contrary to the expected behavior, it does clip.

4) I run

gca().clip_state

and I see it has reverted to "clipgrf". This explains the observed clipping, but it is not clear why the setting from 2) has changed.

5) I run again

gca().clip_state = "off"

Nothing happens (it makes sense, since the clip_state should affect new objects, not previous ones)

6) I run

gce().children.clip_state = "off"

Only now the clipping is gone and the second plot shows in full.

Why the original clip_state setting is overridden?

If it is the normal or expected behavior (in which case the documentation isn't accurate), then what is it meant for, given that the final impact is that of each individual entity's setting?

Confirmed.

This behavior occurs for ages: It was already the case with Scilab 4.0.
It occurs even with gca().auto_scale = "off".
It comes from plot2d(), that resets the value to "clipgrf".
It's not the case with xstring() or xpoly(), or i guess with other "low level" graphic functions like xarcs() etc.

I don't know if such a reset is intentional, and if so, why.
Anyway, it is not (yet) reported as a bug on Bugzilla.

Regards
Samuel

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

Reply via email to