JuliaPlots / InspectDR.jl

Fast, interactive Julia/GTK+ plots (+Smith charts +Gtk widget +Cairo-only images)
MIT License
68 stars 9 forks source link

give ability to toggle waveforms on and off by left clicking on their legend #18

Closed wfrgra closed 5 years ago

ma-laforge commented 5 years ago

I allways wanted to add ability to disable waveforms myself.

...But I have to look at this a bit closer:

I also don't like the idea of using the legend to control line visibility:

I think I would prefer adding a special pop-up form to control line visiblility. ...I will look into this a bit further...

wfrgra commented 5 years ago

The DWaveform to IWaveform and plot.display_data to plot.data mods are there to ensure that the legend always prints the full list of possible waveforms, even those that are not visible. Having the legend display all waveforms is a bit untidy, but toggling the legend's symbol as well as the data gives a reasonable indication of which waveforms are currently displayed, while allowing the waveforms to be reenabled. I'm happy see the controls end up in a pop up instead, but this works for me for the time being. Keep up the good work!

ma-laforge commented 5 years ago

I see: DWaveform & display_data are post-processed datasets that are used for data reduction, etc. (basically to improve plotting speed).

The modifications cannot be done the way you propose because it will cause strange behaviours.

Feel free to keep using your version for the time being. I will try to come up with a less disruptive PR (fewer side effects). Just be aware that some behaviours might be off with your version (like slower plotting).

ma-laforge commented 5 years ago

@wfrgra :

If you update to the newest version of InspectDR (0.3.4), you will now get a new dialog under the Data|Traces menu:

image

This solution now hides traces that are made non-visible from the legend - without loosing the ability to re-enable visibility.

It also does not bypass the speed enhancements provided by the display_data/DWaveform structures (not to mention the scaling issues that would have occured on non-linear axes).

EDIT: You might see a warning about replacing function length(Gtk.GtkListStore). This was unfortunately necessary in order to circumvent a current bug with Gtk.jl. The patch to Gtk.jl is pending....

wfrgra commented 5 years ago

Awesome! Thanks

On Wed, 27 Mar 2019, 00:02 ma-laforge, notifications@github.com wrote:

@wfrgra https://github.com/wfrgra :

If you update to the newest version of InspectDR (0.3.4), you will now get a new dialog under the Data|Traces menu:

[image: image] https://user-images.githubusercontent.com/11205411/55000548-20362f00-4fa9-11e9-8a1a-25e110d2eab6.png

This solution now hides traces that are made non-visible from the legend - without loosing the ability to re-enable visibility.

It also does not bypass the speed enhancements provided by the display_data/DWaveform structures (not to mention the scaling issues that would have occured on non-linear axes).

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/ma-laforge/InspectDR.jl/pull/18#issuecomment-476636206, or mute the thread https://github.com/notifications/unsubscribe-auth/Abpvd2IAXUoJlVW4QOTXRxx0_7bF4er6ks5vaiFlgaJpZM4cApvc .

ma-laforge commented 5 years ago

Feel free to open a new issue if something is not working.