%global _empty_manifest_terminate_build 0 Name: python-nx-altair Version: 0.1.6 Release: 1 Summary: Draw NetworkX graphs with Altair License: MIT URL: https://github.com/Zsailer/nx_altair Source0: https://mirrors.nju.edu.cn/pypi/web/packages/5e/6e/3a0777c9135d895d8f23223344b6218e7f291c01ff741461ace94ff25f0f/nx_altair-0.1.6.tar.gz BuildArch: noarch Requires: python3-pandas Requires: python3-networkx Requires: python3-altair %description # nx_altair *Draw NetworkX graphs with Altair* [![Gitter chat](https://badges.gitter.im/gitterHQ/gitter.png)](https://gitter.im/nx_altair/Lobby?utm_source=share-link&utm_medium=link&utm_campaign=share-link) **nx_altair** offers a similar **draw** API to NetworkX but returns Altair Charts instead. If you'd like to contribute, join the [Gitter chatroom](https://gitter.im/nx_altair/Lobby?utm_source=share-link&utm_medium=link&utm_campaign=share-link) and share your ideas! Also, checkout the [to-do list](#todo-list) below. ## Examples If you'd like to start playing with nx_altair, download [this notebook](examples/nx_altair-tutorial.ipynb)! ### Simple graph ```python import networkx as nx import nx_altair as nxa # Generate a random graph G = nx.fast_gnp_random_graph(n=20, p=0.25) # Compute positions for viz. pos = nx.spring_layout(G) # Draw the graph using Altair viz = 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. ```python import numpy as np # Add weights to nodes and edges for n in G.nodes(): G.nodes[n]['weight'] = np.random.randn() for e in G.edges(): G.edges[e]['weight'] = np.random.uniform(1, 10) # Draw the graph using Altair viz = 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 this [simple guide](https://github.com/Zsailer/guide-to-working-as-team-on-github). 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). - [ ] Add `draw` 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). %package -n python3-nx-altair Summary: Draw NetworkX graphs with Altair Provides: python-nx-altair BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-nx-altair # nx_altair *Draw NetworkX graphs with Altair* [![Gitter chat](https://badges.gitter.im/gitterHQ/gitter.png)](https://gitter.im/nx_altair/Lobby?utm_source=share-link&utm_medium=link&utm_campaign=share-link) **nx_altair** offers a similar **draw** API to NetworkX but returns Altair Charts instead. If you'd like to contribute, join the [Gitter chatroom](https://gitter.im/nx_altair/Lobby?utm_source=share-link&utm_medium=link&utm_campaign=share-link) and share your ideas! Also, checkout the [to-do list](#todo-list) below. ## Examples If you'd like to start playing with nx_altair, download [this notebook](examples/nx_altair-tutorial.ipynb)! ### Simple graph ```python import networkx as nx import nx_altair as nxa # Generate a random graph G = nx.fast_gnp_random_graph(n=20, p=0.25) # Compute positions for viz. pos = nx.spring_layout(G) # Draw the graph using Altair viz = 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. ```python import numpy as np # Add weights to nodes and edges for n in G.nodes(): G.nodes[n]['weight'] = np.random.randn() for e in G.edges(): G.edges[e]['weight'] = np.random.uniform(1, 10) # Draw the graph using Altair viz = 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 this [simple guide](https://github.com/Zsailer/guide-to-working-as-team-on-github). 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). - [ ] Add `draw` 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). %package help Summary: Development documents and examples for nx-altair Provides: python3-nx-altair-doc %description help # nx_altair *Draw NetworkX graphs with Altair* [![Gitter chat](https://badges.gitter.im/gitterHQ/gitter.png)](https://gitter.im/nx_altair/Lobby?utm_source=share-link&utm_medium=link&utm_campaign=share-link) **nx_altair** offers a similar **draw** API to NetworkX but returns Altair Charts instead. If you'd like to contribute, join the [Gitter chatroom](https://gitter.im/nx_altair/Lobby?utm_source=share-link&utm_medium=link&utm_campaign=share-link) and share your ideas! Also, checkout the [to-do list](#todo-list) below. ## Examples If you'd like to start playing with nx_altair, download [this notebook](examples/nx_altair-tutorial.ipynb)! ### Simple graph ```python import networkx as nx import nx_altair as nxa # Generate a random graph G = nx.fast_gnp_random_graph(n=20, p=0.25) # Compute positions for viz. pos = nx.spring_layout(G) # Draw the graph using Altair viz = 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. ```python import numpy as np # Add weights to nodes and edges for n in G.nodes(): G.nodes[n]['weight'] = np.random.randn() for e in G.edges(): G.edges[e]['weight'] = np.random.uniform(1, 10) # Draw the graph using Altair viz = 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 this [simple guide](https://github.com/Zsailer/guide-to-working-as-team-on-github). 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). - [ ] Add `draw` 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). %prep %autosetup -n nx-altair-0.1.6 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-nx-altair -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Tue May 30 2023 Python_Bot - 0.1.6-1 - Package Spec generated