Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Draw interactive NetworkX graphs with Altair

License

NotificationsYou must be signed in to change notification settings

Zsailer/nx_altair

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Draw NetworkX graphs with Altair

Gitter chat

nx_altair offers a similardraw API to NetworkX but returns Altair Charts instead.

If you'd like to contribute, join theGitter chatroom and share your ideas! Also, checkout theto-do list below.

Examples

If you'd like to start playing with nx_altair, downloadthis notebook!

Simple graph

importnetworkxasnximportnx_altairasnxa# Generate a random graphG=nx.fast_gnp_random_graph(n=20,p=0.25)# Compute positions for viz.pos=nx.spring_layout(G)# Draw the graph using Altairviz=nxa.draw_networkx(G,pos=pos)# Show it as an interactive plot!viz.interactive()

Leverage Altair

Customize the visualization

nx_altair also supports many of the same arguments from NetworkX for styling your network--with an Altair twist! Map visualization attributes in a declarative manner.

importnumpyasnp# Add weights to nodes and edgesforninG.nodes():G.nodes[n]['weight']=np.random.randn()foreinG.edges():G.edges[e]['weight']=np.random.uniform(1,10)# Draw the graph using Altairviz=nxa.draw_networkx(G,pos=pos,node_color='weight',cmap='viridis',width='weight',edge_color='black',)# Show it as an interactive plot!viz.interactive()

Install

To install from PyPI:

pip install nx_altair

To install for development, clone this repos and install using pip

pip install -e .

Contributing

We welcome pull requests! If you find a bug, we'd love for you to submit a PR. If you're not sure how to do that, check out thissimple guide.

If you have a feature request, please open an issue or submit a PR!

Todo list

A list of things to-do (good ideas for PRs).

  • Adddraw method that mirrors networkx (easy)
  • Node color scale vmix, vmax (easy)
  • Edge color scale vmix, vmax (easy)
  • Node labels (medium)
  • Edge labels (medium)
  • Mouse-hover interactivity (medium)
  • Arrows for edges (hard)
  • Support for large (>1000 edge) networks (hard)
  • Force-directed interactivity (very hard---beyond altair's current support).

About

Draw interactive NetworkX graphs with Altair

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp