# WYSIWYG Plot Editor

**URL:** https://discourse.julialang.org/t/wysiwyg-plot-editor/30562
**Category:** Tooling
**Created:** [October 31, 2019, 10:01pm UTC](https://discourse.julialang.org/t/wysiwyg-plot-editor/30562 "2019-10-31T22:01:07Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![anon92994695](https://avatars.discourse-cdn.com/v4/letter/a/ce7236/32.png) [@anon92994695](https://discourse.julialang.org/u/anon92994695)
#### Post date: [October 31, 2019, 10:01pm UTC](https://discourse.julialang.org/t/wysiwyg-plot-editor/30562/1 "2019-10-31T22:01:08Z")

</div>

So, I had an idea. Not really my idea, but someone elses from like the 90’s or something.

Would there be an interest in a WYSIWYG style plot editor as an extension to Juno/Atom? Or maybe in it’s own little pop out window in pure julia style?

I have no problem with Plots.jl, but man, sometimes it’s just hard to remember all the commands and sort through the docs. Sometimes I just want to change an axis numbering, or zoom via mouse, etc.

I know it’s heretical to say this, but is anyone else interested in such a thing? For publications and presentations it would be kinda nice. If there’s interest, maybe then we can sort out the “how” aspect. If there’s no interest I don’t know if I’ll dive into it.

---

<div class="post-metadata">

### Author: ![carstenbauer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/carstenbauer/32/4981_2.png) [@carstenbauer](https://discourse.julialang.org/u/carstenbauer)
#### Post date: [October 31, 2019, 10:30pm UTC](https://discourse.julialang.org/t/wysiwyg-plot-editor/30562/2 "2019-10-31T22:30:43Z")

</div>

I would definitely appreciate it if there was a way to interactive change axis labels, move the legend, etc. So +1 for creative ideas like this.

However, remember that Plots.jl is using multiple different backends that internally work very differently. For this reason, I guess it’s very hard to create a single interactive front-end for all of them.

---

<div class="post-metadata">

### Author: ![davidanthoff](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/davidanthoff/32/223493_2.png) [@davidanthoff](https://discourse.julialang.org/u/davidanthoff)
#### Post date: [November 1, 2019, 12:47am UTC](https://discourse.julialang.org/t/wysiwyg-plot-editor/30562/3 "2019-11-01T00:47:56Z")

</div>

Take a look at [DataVoyager.jl](https://github.com/queryverse/DataVoyager.jl). It is not really a WYSIWYG plot editor, more a data exploration tool. But you can still create plots interactively, and then easily get the plot specification into your running julia session as a [VegaLite.jl](https://github.com/queryverse/VegaLite.jl) plot.

Once the vega team has created a new version of [lyra](https://github.com/vega/lyra) that works with the current generation of vega, I plan to provide a similar tool to DataVoyager.jl, but for lyra. Lyra is much more of a WYSIWYG plot editor than voyager. There are some nice videos and an online version of the previous version [here](http://idl.cs.washington.edu/projects/lyra/).

---

<div class="post-metadata">

### Author: ![anon92994695](https://avatars.discourse-cdn.com/v4/letter/a/ce7236/32.png) [@anon92994695](https://discourse.julialang.org/u/anon92994695)
#### Post date: [November 7, 2019, 11:28am UTC](https://discourse.julialang.org/t/wysiwyg-plot-editor/30562/4 "2019-11-07T11:28:33Z")

</div>

David thats an awesome project. Definitely inline with what I’m thinking.

I started thinking, maybe a WYSWIG plot editor isn’t really the thing. Maybe good UI with plots is the problem at hand? Click to interact, then later right click to change axis, etc. I know some efforts have been made for this, but last I checked(over a year ago) none were very mature.

I’m still kind of racking my brain as to the best means forward.

---

<div class="post-metadata">

### Author: ![Usor](https://avatars.discourse-cdn.com/v4/letter/u/8dc957/32.png) [@Usor](https://discourse.julialang.org/u/Usor)
#### Post date: [March 8, 2020, 2:47pm UTC](https://discourse.julialang.org/t/wysiwyg-plot-editor/30562/5 "2020-03-08T14:47:26Z")

</div>

Why the term “heretical”?

---

<div class="post-metadata">

### Author: ![PetrKryslUCSD](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/petrkryslucsd/32/215825_2.png) [@PetrKryslUCSD](https://discourse.julialang.org/u/PetrKryslUCSD)
#### Post date: [March 8, 2020, 2:50pm UTC](https://discourse.julialang.org/t/wysiwyg-plot-editor/30562/6 "2020-03-08T14:50:50Z")

</div>

PlotlyJS can offer the plot editor online. All it takes is to register on the site.

---

<div class="post-metadata">

### Author: ![affans](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/affans/32/11911_2.png) [@affans](https://discourse.julialang.org/u/affans)
#### Post date: [March 8, 2020, 10:07pm UTC](https://discourse.julialang.org/t/wysiwyg-plot-editor/30562/7 "2020-03-08T22:07:43Z")

</div>

Wow Lyra sounds great. I kind of stopped working with VegaLite since there was too much code to write for simple data exploration (i.e quickly plotting a dataframe or a few vectors). But I may pick it up again to use with Lyra.

---

<div class="post-metadata">

### Author: ![davidanthoff](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/davidanthoff/32/223493_2.png) [@davidanthoff](https://discourse.julialang.org/u/davidanthoff)
#### Post date: [March 8, 2020, 10:14pm UTC](https://discourse.julialang.org/t/wysiwyg-plot-editor/30562/8 "2020-03-08T22:14:07Z")

</div>

@affans I released a new version of VegaLite that has some features that should make these simple cases much more concise. I’ll write the changes up soon, but essentially things like this work now:  
`@vlplot(:point, rand(10), rand(10))` (just pass vectors without a table, and the first two positions are automatically x and y),or `df |> @vlplot(:point, :colA, :colB)` (again, positional option for the X and Y encoding story).
