MCPcopy Create free account
hub / github.com/alibaba/GraphScope / generic_graph_view

Function generic_graph_view

python/graphscope/nx/classes/graphviews.py:35–65  ·  view source on GitHub ↗
(G, create_using=None)

Source from the content-addressed store, hash-verified

33
34
35def generic_graph_view(G, create_using=None):
36 if create_using is None:
37 newG = G.__class__(create_empty_in_engine=False)
38 else:
39 newG = create_using(create_empty_in_engine=False)
40 if G.is_multigraph() != newG.is_multigraph():
41 raise NetworkXError("Multigraph for G must agree with create_using")
42 newG = nx.freeze(newG)
43
44 # create view by assigning attributes from G
45 newG._graph = G
46 newG.graph = G.graph
47
48 newG._node = G._node
49 if newG.is_directed():
50 if G.is_directed():
51 newG._succ = G._succ
52 newG._pred = G._pred
53 newG._adj = G._succ
54 else:
55 newG._succ = G._adj
56 newG._pred = G._adj
57 newG._adj = G._adj
58 elif G.is_directed():
59 if G.is_multigraph():
60 newG._adj = UnionMultiAdjacency(G._succ, G._pred)
61 else:
62 newG._adj = UnionAdjacency(G._succ, G._pred)
63 else:
64 newG._adj = G._adj
65 return newG
66
67
68def subgraph_view(G, filter_node=no_filter, filter_edge=no_filter):

Callers 3

copyMethod · 0.90
to_directedMethod · 0.90
reverse_viewFunction · 0.85

Calls 3

freezeMethod · 0.80
is_multigraphMethod · 0.45
is_directedMethod · 0.45

Tested by

no test coverage detected