Skip to content

Commit

Permalink
Merge pull request #19 from jarrodmillman/readme
Browse files Browse the repository at this point in the history
Improve README
  • Loading branch information
jarrodmillman committed Apr 1, 2018
2 parents a519fd1 + 78c84f1 commit cc04d79
Show file tree
Hide file tree
Showing 6 changed files with 1,522 additions and 65 deletions.
65 changes: 0 additions & 65 deletions README.md

This file was deleted.

64 changes: 64 additions & 0 deletions README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
Grave—dead simple graph visualization
=====================================

.. image:: https://travis-ci.org/networkx/grave.svg?branch=master
:target: https://travis-ci.org/networkx/grave
:alt: Automated test status (Linux and MacOS)

.. image:: https://ci.appveyor.com/api/projects/status/github/networkx/grave?branch=master&svg=true
:target: https://ci.appveyor.com/project/networkx/grave
:alt: Automated test status (Windows)

.. image:: https://codecov.io/gh/networkx/grave/branch/master/graph/badge.svg
:target: https://codecov.io/gh/networkx/grave
:alt: Test coverage

.. GH breaks rendering of SVG from the repo, so we redirect through rawgit.com.
GH ignores the width and align directives for PNGs.
.. image:: https://rawgit.com/network/grave/master/doc/_static/default.svg
:width: 200px
:align: right
:alt: Logo

Grave is a graph visualization package combining ideas from Matplotlib,
NetworkX, and seaborn. Its goal is to provide a network drawing API that
covers the most use cases with sensible defaults and simple style
configuration. Currently, it supports drawing graphs from NetworkX.

Example
-------

Here, we create a graph and color the nodes in its minimum weighted
dominating set:

.. code:: python
import matplotlib.pyplot as plt
import networkx as nx
from networkx.algorithms.approximation.dominating_set import min_weighted_dominating_set
from grave import plot_network
network = nx.powerlaw_cluster_graph(50, 1, .2)
dom_set = min_weighted_dominating_set(network)
for node, node_attrs in network.nodes(data=True):
node_attrs['is_dominator'] = True if node in dom_set else False
def color_dominators(node_attrs):
if node_attrs.get('is_dominator', False):
return {'color': 'red'}
else:
return {'color': 'black'}
fig, ax = plt.subplots()
plot_network(network, node_style=color_dominators)
plt.show()
The result:

.. image:: https://rawgit.com/network/grave/master/doc/_static/dominators.svg
:width: 700
:align: center
:alt: Coloring the minimum weighted dominating set of a graph

0 comments on commit cc04d79

Please sign in to comment.