Which is better Makie or Graphs?

I’m trying to visually see how some functions converge and use it for some other visualizations of functions or 3d simulations and I’m wondering which one is better, or should I learn both? Initially I choose Makie, but don’t have a graphics card. Is it worth using WGLMakie or should I use Graphs, what is your recommendation?
Thanks in advance.

With Graphs.jl and GraphMakie.jl you could do some plots…


1 Like

By now, GLMakie should also work on most platforms without GPU, so it should be possible to still set it up…
And if not, CairoMakie & WGLMakie should work pretty well :wink:

I think you’re misunderstanding what Graphs.jl is – The name “Graph” is referring to a mathematical graph, which is a set of points connected by edges. This is not the same as a plot; the packages aren’t interchangeable.


If you’d like an alternative to Makie, Plots.jl and Gadfly.jl are both pretty good. The main differences between these three will be:

  1. Plots.jl is the most mature, and is also versatile (as it can use many different backends).
  2. Gadfly.jl uses ggplot-style syntax, where you create graphs by composing different parts. This is very flexible. That being said, Gadfly is being updated a lot less than the other two packages these days.
  3. Makie.jl has the most bells and whistles (and IMO the best-looking graphs, but obviously that’s subjective). It also has the AlgebraOfGraphics expansion, which lets you extend Makie with ggplot-style syntax – of these, AoG hews closest to what ggplot looks like.

I personally would suggest Makie.jl, as it’s the one improving the fastest these days, but they’re all good.

Sorry, you are right. I forgot to mention Plots.jl. I wanted to ask if it is better to learn those two or Makie as Makie can do both things, with a bit of help from GraphsMakie. Also, my general usage for the project now is mostly around mathematical graphs.
Thank you for pointing that out.

1 Like

Ahh, makes sense – I had no idea Makie could do graphs.

I think it uses, Graphs to do graphs. so it just adds some functionality.
How long do you think does it take to learn Graphs.jl, Makie.jl and Plots.jl?