Interactive display for graphs (graph theory)

The project I am working on has 3 parts.

  1. develop a workflow in which SQL tables can be represented in graph form with the relevant meta information and the ability to develop a workflow to connect columns of different sub graphs with eachother (steiner tree algo). See example bellow. This seems to work.
    image

  2. currently I am looking for a framework in which a user can interact with the graph in a certain (programmed way). For instance i want the user to be able to click any of the columns she wants to join and once she is done, the steiner tree algo will OVERLAY the calculated path on the existing graph. Whereby there can be some more user interaction.

question:
Which packages (or parts of packages) should I have a closer look at to get this type of functionality?

thank you in advance!

best

Maybe check the interaction functionality in Makie

1 Like

how do i couple a lightgraph to the makie eco-system?

You’d most likely have to build that

1 Like

There is also a package called https://github.com/JuliaGraphs/D3GraphPlot.jl, but it is still for Julia version 0.5, so there definitely needs to be some maintenance done before it can be used.

Edit: I also have never used that package, so I don’t know if it does what you want.

hi,

Thanks for the feedback.

I am checking with Simon Danisch, creator of Makie, what the best route would be to add lightgraph to the options list. That wil take a while so I will start with the 3rd part of my project and circle back.

@simonschoelly: D3GraphPlots seems a bit to experimental for me :slight_smile: .

best,

If you just want to plot graphs you can do it via GraphRecipes Examples · Plots
You can even use GraphRecipes from Makie via MakieRecipes Examples · MakieRecipes but be prepared for a bumpy ride here.

My suggestion of Makie was if you wanted to build a graph plotting library with mouse interaction / graph editing. That’s a very advanced project of course.

@mkborregaard

your intiution was right. both examples can be made bij gplot() or at least something very similar. The goal is to have the interaction since I am researching how a tradition SQL environment can be enhanced by graph theory without having to resort to a whole new paradigm like knowledge graphs (see grakn for instance).

I belief they (grakn) are very good but I work it this field and it is very hard to find GOOD SQL developers since they are rare, the pay is good and thus they have little incentive to learn yet another language + you have to manage the dataflow to the grakn environment and have to make the ontological connection. I don’t belief most mid size companies will be interested in that type of investment. By exploring a more intuitive route I am curious to see what can be added without that type of overhead.

And yes, i think the makie route will be quite advanced so I will need time hence starting with the next part :slight_smile: .

best,