Exemple #1
0
    def test_edge_float_type(self):
        G = NdexGraph()
        n_a = G.add_new_node(name='A')
        n_b = G.add_new_node(name='B')
        n_c = G.add_new_node(name='C')
        n_d = G.add_new_node(name='D')

        e_1 = G.add_edge(n_a, n_b, 10, {'weight': 1.234})
        e_2 = G.add_edge(n_a, n_c, 11, {'weight': 2.554})
        e_3 = G.add_edge(n_a, n_d, 12, {'weight': 5.789})
        e_4 = G.add_edge(n_b, n_c, 13, {'weight': 2.011})
        e_5 = G.add_edge(n_b, n_d, 14, {'weight': 7.788})

        print(json.dumps(G.to_cx()))
        G.upload_to('http://dev.ndexbio.org', 'scratch', 'scratch')
Exemple #2
0
    def test_edge_float_type(self):
        G = NdexGraph()
        n_a = G.add_new_node(name='A')
        n_b = G.add_new_node(name='B')
        n_c = G.add_new_node(name='C')
        n_d = G.add_new_node(name='D')

        e_1 = G.add_edge(n_a, n_b, 10, {'weight': 1.234})
        e_2 = G.add_edge(n_a, n_c, 11, {'weight': 2.554})
        e_3 = G.add_edge(n_a, n_d, 12, {'weight': 5.789})
        e_4 = G.add_edge(n_b, n_c, 13, {'weight': 2.011})
        e_5 = G.add_edge(n_b, n_d, 14, {'weight': 7.788})

        print(json.dumps(G.to_cx()))
        G.upload_to('http://dev.ndexbio.org', 'scratch', 'scratch')
Exemple #3
0
def nx_to_NdexGraph(G_nx, discard_null=True):
    """Converts a NetworkX into a NdexGraph object.

    Parameters
    ----------
    G_nx : networkx.Graph

    Returns
    -------
    ndex.networkn.NdexGraph

    """

    G = NdexGraph()
    node_id = 0
    node_dict = {}
    G.max_edge_id = 0
    for node_name, node_attr in G_nx.nodes(data=True):
        if discard_null:
            node_attr = {
                k: v
                for k, v in node_attr.items() if not pd.isnull(v)
            }

        if 'name' in node_attr:
            #G.add_node(node_id, node_attr)
            G.add_node(node_id, **node_attr)
        else:
            #G.add_node(node_id, node_attr, name=node_name)
            G.add_node(node_id, name=node_name, **node_attr)
        node_dict[node_name] = node_id
        node_id += 1
    for s, t, edge_attr in G_nx.edges(data=True):
        if discard_null:
            edge_attr = {
                k: v
                for k, v in edge_attr.items() if not pd.isnull(v)
            }

        G.add_edge(node_dict[s], node_dict[t], G.max_edge_id, edge_attr)
        G.max_edge_id += 1

    if hasattr(G_nx, 'pos'):
        G.pos = {node_dict[a]: b for a, b in G_nx.pos.items()}
        # G.subnetwork_id = 1
        # G.view_id = 1

    return G