Jupter notebook으로 Neo4j 실행

5930 단어 graphneo4jPython

개시하다


Jupyter에서 차트 네트워크 분석 도구 실행Neo4j
결과를 Jupter notebook에서 시각화합니다.
스크루 드라이버를 사용하여 수행합니다.
이 컨텐츠의 Notebook은 여기.입니다.

운영 환경


CentOS
openJDK 8
python 3.6.6
Jupyter notebook 4.3.0
Neo4j CommunityEdition 3.5.5
스크루 드라이버

차리다


설치하다.

  • Neo4j
    Neo4j 설치
    DL 및 설치 방법여기.
  • 파이톤 라이브러리
    Neo4jbolt 드라이버 설치
  • $ pip install neo4j
    

    Neo4j 매개변수 변경

  • 호스트 OS에서 액세스할 수 있도록 다음 매개변수 참고
  • $ vi $NEO4J_HOME/conf/neo4j.conf
    # With default configuration Neo4j only accepts local connections.
    # To accept non-local connections, uncomment this line:
    dbms.connectors.default_listen_address=0.0.0.0
    
  • bolt 드라이브를 사용할 수 있도록 다음과 같은 매개 변수를 논평 출력
  • $ vi $NEO4J_HOME/conf/neo4j.conf
    # Bolt connector
    dbms.connector.bolt.enabled=true
    dbms.connector.bolt.tls_level=OPTIONAL
    dbms.connector.bolt.listen_address=:7687
    

    Neo4j 시작

    $ $NEO4J_HOME/bin/neo4j start
    
    * 처음 부팅한 후에는 다음을 방문하여 필요한 경우 암호를 변경하십시오.
    http://localhost:7474

    데이터


    데이터 무비 데이터 활용

    실행


    Jupter notebook에서 다음 내용을 실행합니다

    가져오기 라이브러리, 드라이버에 연결

    import pandas as pd
    from neo4j  import GraphDatabase, basic_auth
    import matplotlib.pyplot as plt
    %matplotlib inline
    
    driver = GraphDatabase.driver("bolt://localhost:7687", auth=basic_auth("neo4j", "Welcome1"))
    

    차트 데이터 분석, 가져오기

    Query = '''CALL algo.betweenness.stream('','',{direction:'both'})
    YIELD nodeId, centrality
    MATCH (person:Person) WHERE id(person) = nodeId
    RETURN person.name, centrality
    ORDER BY centrality DESC LIMIT 10'''
    
    session = driver.session()
    res = session.run(Query)
    
    col = ['name', 'centrality']
    df = pd.DataFrame([r.values() for r in res], columns=col)
    
    session.close()
    
    del session
    
    

    막대 차트 만들기

    plt.figure(figsize=(15, 6))
    plt.bar(list(range(len(df))), df['centrality'])
    plt.xticks(list(range(len(df))), df['name'])
    

    결실


    좋은 웹페이지 즐겨찾기