RuntimeError: No static implementation was found for the desired routine.
Hi, I'm using Ubuntu 18.04.4 LTS default installation of graph-tool using pip3
Python 3.6.9 (default, Nov 7 2019, 10:44:02)
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import graph_tool.all as gt
>>> g = gt.price_network(3000)
>>> state = gt.minimize_blockmodel_dl(g)
>>> b = state.get_blocks()
>>> cluster = g.new_vertex_property("string")
>>> colors = ['blue', 'red', 'tan', 'green', 'violet', 'orange' , 'Khaki', 'lightblue', 'lightgreen', 'yellow','cyan', 'pink','purple','magenta','aqua','olive','coral','gold']
>>> for v in g.vertices():
... cluster[v] = colors[b[v]]
>>> g.vertex_properties["cluster"] = cluster
I have a graph with cluster property for vertex. I'm using sfdp_layout. without groups parameters, it is working. But, when I add groups VertexPropertyMap,
pos = gt.sfdp_layout(g, groups=g.vp.cluster)
I have this error
---------------------------------------------------------------------------
RuntimeError Traceback (most recent call last)
<ipython-input-75-68a38cd87bfb> in <module>
----> 1 pos = gt.sfdp_layout(g, groups=g.vp['cluster']) # 𝑂(𝑉log𝑉)
/usr/lib/python3/dist-packages/graph_tool/draw/__init__.py in sfdp_layout(g, vweight, eweight, pin, groups, C, K, p, theta, max_level, gamma, mu, mu_p, init_step, cooling_step, adaptive_cooling, epsilon, max_iter, pos, multilevel, coarse_method, mivs_thres, ec_thres, coarse_stack, weighted_coarse, verbose)
721 eweight=eweight, vweight=vweight,
722 verbose=verbose)
--> 723 for count, (u, pos, K, vcount, ecount) in enumerate(cgs):
724 if verbose:
725 print("Positioning level:", count, u.num_vertices(), end=' ')
/usr/lib/python3/dist-packages/graph_tool/draw/__init__.py in coarse_graphs(g, method, mivs_thres, ec_thres, weighted_coarse, eweight, vweight, groups, verbose)
518 print(mivs.a.sum() if mivs is not None else "")
519 pos = _propagate_pos(cg[i + 1][0], u, c, cc, pos,
--> 520 Ks[i] / 1000., mivs)
521
522 def coarse_graph_stack(g, c, coarse_stack, eweight=None, vweight=None,
/usr/lib/python3/dist-packages/graph_tool/draw/__init__.py in _propagate_pos(g, cg, c, cc, cpos, delta, mivs)
438 _prop("v", cg, cpos),
439 delta if mivs is None else 0,
--> 440 _get_rng())
441
442 if mivs is not None:
RuntimeError: No static implementation was found for the desired routine. This is a graph_tool bug. :-( Please submit a bug report at http://graph-tool.skewed.de/issues. What follows is debug information.
Action: std::_Bind<do_propagate_pos (std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>, boost::any, std::_Placeholder<4>, boost::any, double, std::reference_wrapper<pcg_detail::extended<(unsigned char)10, (unsigned char)16, pcg_detail::engine<unsigned long, unsigned __int128, pcg_detail::xsl_rr_mixin<unsigned long, unsigned __int128>, false, pcg_detail::specific_stream<unsigned __int128>, pcg_detail::default_multiplier<unsigned __int128> >, pcg_detail::engine<unsigned long, unsigned long, pcg_detail::rxs_m_xs_mixin<unsigned long, unsigned long>, true, pcg_detail::oneseq_stream<unsigned long>, pcg_detail::default_multiplier<unsigned long> >, true> >)>
Arg 1: std::reference_wrapper<boost::undirected_adaptor<boost::adj_list<unsigned long> > >
Arg 2: std::reference_wrapper<boost::undirected_adaptor<boost::adj_list<unsigned long> > >
Arg 3: boost::checked_vector_property_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::typed_identity_property_map<unsigned long> >
Arg 4: boost::checked_vector_property_map<std::vector<double, std::allocator<double> >, boost::typed_identity_property_map<unsigned long> >