通过 x,y 坐标限制确定子图的最有效方法?

Most efficient way to determine subgraph by x,y coordinate limits?

对于具有 NetworkX 中每个节点坐标信息的图表,我希望能够创建提供 x、y 限制的子图 [(min_x, max_x), (min_y, max_y)]。 我是否需要提取所有坐标并根据我的约束手动检查它们

list(zip(*graph.nodes(data = "pos")))

或者有更直接或更简单的方法来解决这个任务吗?

非常感谢您。 我

可以使用networkx的subgraph view。所以,像这样:

def select_by_coords(xmin, xmax, ymin, ymax):
    def inner_select(node):
        node_dict = dict(node)
        return xmin < node_dict['x'] < xmax && ymin < node_dict['y'] < ymax
    
    return inner_select

subgraph = subgraph_view(graph, filter_node=select_by_coords(xmin, xmax, ymin, ymax))