Goal is to do some interactive plotting from the REPL on linux (not using an Atom or Jupyter web browser)
This package enables users of Julia lang to easily generate, explore, and share fractals of Julia, Mandelbrot, and Newton type. The name Fatou comes from the mathematician after whom the Fatou sets are named.
Definition (Julia set): For any holomorphic function on a complex plane, the boundary of the set of points whose result diverges when the function is iteratively evaluated at each point.
Definition (Fatou set): The Julia set’s complement is the set of fixed limit points from holomorphic r…
Previously I made the
Fatou.jl package and I would like to make an interactive plot inspired by the repo:
Have a look at their GIF in the readme for the interactive plotting visualization example.
Is this something that can be accomplished from the REPL plotting in Julia somehow?
I’m not sure what you mean with “from the REPL” but it seems that Makie would be good for this since it should update the canvas quickly and handle mouse events.
What I mean is that I don’t want to run Julia from Juno or Atom or Jupyter, I want to interactively plot from the REPL in the standard unix environment without using any web-browser interfaces.
Can Makie be used without the web browser interface? I’d prefer something like a Qt popup window.
Makie just pops up a render window like any other plotting / GUI tool.
There are two Mandelbrot examples and one Julia set example in the
examples section of GR.jl - two plain Julia scripts (
julia.jl) and an OpenCL accelerated Mandelbrot script.
Gaston works this way. It can plot arrays as a set of points, so it can plot fractals if you store them as arrays.
What about making the plot interactive?
I already know I can plot fractals in plotting packages.
To answer my question you would also have to take the interactivity into account, like mouse hover and click and drag and so on… can they do that? Please show how I would make an interactive plot that updates with click and drag coordinate parametric interactivity.
For example, placing dots into the plot and clicking and dragging them into to new configurations. The plot should be re-computed with the new configurations.
Yeah, Gaston (or rather, gnuplot) is not designed to do that. It wasn’t clear to me from your question and comments what you meant by ‘interactive’.
InspectDR written in Julia, so you can add interactivity if you wish.
It was not
to hook in custom callbacks yet, but you can use “dynamic patching” (guerrilla patch/monkey patch) to “hack” in your own hooks at the moment. designed
You can find an example of this here:
The first example does not work at the moment. I think it is supposed to work, but the "button-press-event" signal already has a connection in the InspectDR code. I think this is a bug with Gtk. I am almost certain you are supposed to be able to connect multiple callback functions to the same “signal”. I merely included the example in case you better understood how Gtk worked, and knew how to get around the problem.
As for the second example: t…
Note that it might be more appropriate to overwrite the callback functions instead of the
handleevent_mousepress() function. I can guide you through that if you want.
InspectDR does not support heat map or contour plots - so you probably don’t want to use it for drawing fractals. But it does work fine for 2D line plots.
InspectDR typically is used as a plot application, but you could also instantiate an individual InspectDR plot widget within your custom, interactive Gtk application.
…But if you want to do that, you might want an overview of how the code was divided into files. I will only do that if you ask, I don’t feel like explaining this for nothing.