I have been using LightGraphs.jl successfully, together with MetaGraphs.jl, and I recommend it to everybody.
I am toying with the idea of dynamic networks, where links are created and destroyed according to various prescriptions relating to degrees, and subject to different probability distributions. I know that one can add and remove edges from graphs using LightGraphs, but how efficiently. I removing edges an O(nv(graphs)) operations, or O(1)? Is it possible to remove an edge between two specific nodes? Of course, I can perform some experiments, but perhaps somebody has insight based on past experience. Also, are there alternative approaches I should consider? I am moving towards temporal networks.
Thanks!