Dear Tiago,
I am trying to use a matplotlib colormap for coloring vertices, and I need transparency also.
import graph_tool.all as gt
import matplotlib.pyplot as plt
import matplotlib.cm as cm
plt.switch_backend("cairo")
g = gt.collection.data["karate"]
position = gt.sfdp_layout(g)
fig, ax = plt.subplots(1, 1)
gt.graph_draw(g, pos = position, vertex_fill_color = gt.local_clustering(g),
vcmap = (cm.inferno, 0.3), mplfig = ax)
plt.savefig("test.pdf")
I am getting the following error:
Traceback (most recent call last):
File "test.py", line 12, in <module>
plt.savefig("test.pdf")
File "/usr/lib/python3/dist-packages/matplotlib/pyplot.py", line 701, in savefig
res = fig.savefig(*args, **kwargs)
File "/usr/lib/python3/dist-packages/matplotlib/figure.py", line 1834, in savefig
self.canvas.print_figure(fname, **kwargs)
File "/usr/lib/python3/dist-packages/matplotlib/backend_bases.py", line 2267, in print_figure
**kwargs)
File "/usr/lib/python3/dist-packages/matplotlib/backends/backend_cairo.py", line 470, in print_pdf
return self._save(fobj, 'pdf', *args, **kwargs)
File "/usr/lib/python3/dist-packages/matplotlib/backends/backend_cairo.py", line 534, in _save
self.figure.draw(renderer)
File "/usr/lib/python3/dist-packages/matplotlib/artist.py", line 55, in draw_wrapper
return draw(artist, renderer, *args, **kwargs)
File "/usr/lib/python3/dist-packages/matplotlib/figure.py", line 1299, in draw
renderer, self, artists, self.suppressComposite)
File "/usr/lib/python3/dist-packages/matplotlib/image.py", line 138, in _draw_list_compositing_images
a.draw(renderer)
File "/usr/lib/python3/dist-packages/matplotlib/artist.py", line 55, in draw_wrapper
return draw(artist, renderer, *args, **kwargs)
File "/usr/lib/python3/dist-packages/matplotlib/axes/_base.py", line 2437, in draw
mimage._draw_list_compositing_images(renderer, self, artists)
File "/usr/lib/python3/dist-packages/matplotlib/image.py", line 138, in _draw_list_compositing_images
a.draw(renderer)
File "/usr/lib/python3/dist-packages/graph_tool/draw/cairo_draw.py", line 1565, in draw
self.vorder, self.eorder, self.nodesfirst, self.kwargs)
File "/usr/lib/python3/dist-packages/graph_tool/draw/cairo_draw.py", line 690, in cairo_draw
vattrs, vdefaults = _attrs(vprops, "v", g, vcmap)
File "/usr/lib/python3/dist-packages/graph_tool/draw/cairo_draw.py", line 484, in _attrs
nattrs[int(attr)] = _prop(d, g, _convert(attr, v, cmap))
File "/usr/lib/python3/dist-packages/graph_tool/draw/cairo_draw.py", line 323, in _convert
cmap, alpha = cmap
ValueError: too many values to unpack (expected 2)
However, if I remove vcmap argument, it draws fine. I am on Ubuntu 18.04, and the graph-tool version is 2.27. Kindly help me.
Thank you
Snehal Shekatkar
attachment.html (12.8 KB)