No backend available (GLMakie, CairoMakie, WGLMakie)

@Theodd, what is this editor you’re using? I think there is an issue with Atom and Makie. @Datseris has had this issue before and if I recall knows what is wrong (but there is no current fix). I believe the development of Julia IDE work has now shifted to VSCode and as a consequence there are things no longer being triaged in Atom.

@Libbum I was indeed on Julia via Atom. Was completely unaware of the switch-over to VSCode, this really should be better advertised on the Juno pages.

Thank you ever so much for the notice, I’m switching over and hoping all is well.

Can confirm. The problem was Atom. Well, no, let’s be fair. The problem was WebIO, but thus whole business convinced me to move from Atom to VSCode, where there the whole pipeline is well supported.

Just wanted to mention that I also ran into this issue and found I wasn’t able to update Makie from v0.13.14 → v0.15.0 (latest), solved this by creating a test environment and adding my packages one by one starting with Makie@0.15.0 and found that when adding either Plotly or Interact it downgrades Makie to v0.13.14. I also found that I had to put “using GLMakie” as well as “using Makie” for using Makie.volume() which I didn’t have to do on previous versions.

Hope this can be of aid to anyone that ran into a similar problem, thank you to @Libbum for the advice!

This is explained in the docs:
Nowadays, when plotting, one needs to only import the backend!

1 Like


I’ve got the same issue here, even starting a new test environment.
Using this code:

using Agents, Random
using InteractiveDynamics
using CairoMakie

model, agent_step!, model_step! = Models.forest_fire()

alive(model) = count(a.status == :green for a in allagents(model))
burning(model) = count(a.status == :burning for a in allagents(model))
mdata = [alive, burning, nagents]
mlabels = ["alive", "burning", "total"]

params = Dict(
    :f => 0.02:0.01:1.0,
    :p => 0.01:0.01:1.0,

ac(a) = a.status ? "#1f851a" : "#67091b"
am = :rect

p1 = abm_data_exploration(model, agent_step!, model_step!, params;
ac = ac, as = 1, am = am, mdata, mlabels)

I’ve got the following error:

TypeError: in typeassert, expected Vector{Float32}, got a value of type Vector{Union{}} 

If i switch to another backend environment (GLMakie for example) I’ve got another error:

Error: Error while rendering!

Anyone knows what could be the source of these issues?