diff --git a/graphtools/base.py b/graphtools/base.py index c7c72d6..a960d02 100644 --- a/graphtools/base.py +++ b/graphtools/base.py @@ -730,12 +730,12 @@ def to_pygsp(self, **kwargs): def to_igraph(self, attribute="weight", **kwargs): """Convert to an igraph Graph - Uses the igraph.Graph.Weighted_Adjacency constructor + Uses the igraph.Graph constructor Parameters ---------- attribute : str, optional (default: "weight") - kwargs : additional arguments for igraph.Graph.Weighted_Adjacency + kwargs : additional arguments for igraph.Graph """ try: import igraph as ig @@ -748,8 +748,13 @@ def to_igraph(self, attribute="weight", **kwargs): # not a pygsp graph W = self.K.copy() W = utils.set_diagonal(W, 0) - return ig.Graph.Weighted_Adjacency(utils.to_array(W).tolist(), - attr=attribute, **kwargs) + sources, targets = W.nonzero() + edgelist = list(zip(sources, targets)) + g = ig.Graph(W.shape[0], edgelist, **kwargs) + weights = W[W.nonzero()] + weights = utils.to_array(weights) + g.es[attribute] = weights.flatten().tolist() + return g def to_pickle(self, path): """Save the current Graph to a pickle. diff --git a/graphtools/version.py b/graphtools/version.py index 67bc602..9c73af2 100644 --- a/graphtools/version.py +++ b/graphtools/version.py @@ -1 +1 @@ -__version__ = "1.3.0" +__version__ = "1.3.1"