diff options
author | CoprDistGit <infra@openeuler.org> | 2023-05-15 05:46:23 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-05-15 05:46:23 +0000 |
commit | 23a017c63c28cb80a18674994be2a66dc4e051d1 (patch) | |
tree | 11f1116203bccee89b03a8e3cc12e24bd6d86440 | |
parent | f73e70a4837ca436fef9e97df7121fb9286e6ccd (diff) |
automatic import of python-nx-altair
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-nx-altair.spec | 390 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 392 insertions, 0 deletions
@@ -0,0 +1 @@ +/nx_altair-0.1.6.tar.gz diff --git a/python-nx-altair.spec b/python-nx-altair.spec new file mode 100644 index 0000000..9857ffe --- /dev/null +++ b/python-nx-altair.spec @@ -0,0 +1,390 @@ +%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* + +[](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() +``` + +<img src="docs/_img/readme.png" width="350"> + +### Leverage Altair + +<img src="docs/_img/interactivity.gif"> + + +### 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() +``` +<img src="docs/_img/readme2.png" width="450"> + + +## 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* + +[](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() +``` + +<img src="docs/_img/readme.png" width="350"> + +### Leverage Altair + +<img src="docs/_img/interactivity.gif"> + + +### 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() +``` +<img src="docs/_img/readme2.png" width="450"> + + +## 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* + +[](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() +``` + +<img src="docs/_img/readme.png" width="350"> + +### Leverage Altair + +<img src="docs/_img/interactivity.gif"> + + +### 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() +``` +<img src="docs/_img/readme2.png" width="450"> + + +## 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 +* Mon May 15 2023 Python_Bot <Python_Bot@openeuler.org> - 0.1.6-1 +- Package Spec generated @@ -0,0 +1 @@ +9f4fe6f5bedd95bf04ffbe0b004db1e6 nx_altair-0.1.6.tar.gz |