Statistics
| Branch: | Revision:

iof-tools / networkxMiCe / networkx-master / doc / release / release_2.1.rst @ 5cef0f13

History | View | Annotate | Download (9.09 KB)

1
Announcement: NetworkX 2.1
2
==========================
3

    
4
We're happy to announce the release of NetworkX 2.1!
5
NetworkX is a Python package for the creation, manipulation, and study of the
6
structure, dynamics, and functions of complex networks.
7

    
8
For more information, please visit our `website <http://networkx.github.io/>`_
9
and our `gallery of examples
10
<https://networkx.github.io/documentation/latest/auto_examples/index.html>`_.
11
Please send comments and questions to the `networkx-discuss mailing list
12
<http://groups.google.com/group/networkx-discuss>`_.
13

    
14
Highlights
15
----------
16

    
17
This release is the result of four months of work with 75 pull requests by
18
37 contributors. Highlights include:
19

    
20
  - Arrows for drawing DiGraph edges are vastly improved!
21
    And an example to show them.
22

    
23
  - More than 12 new functions for graph generation, manipulation and/or
24
    new graph algorithms.
25

    
26
    - Add a large clique size heuristic function (#2830)
27
    - Add rooted product function (#2825)
28
    - Label Propagation Community Detection (#2821)
29
    - Minimum cycle basis (#2823)
30
    - Add Mycielski Operator (#2785)
31
    - Adds prefix_tree, dag_to_branching, and example. (#2784)
32
    - Add inverse_line_graph generator from #2241 (#2782)
33
    - Steiner tree and metric closure. (#2252)
34
    - Add flow based node and edge disjoint paths. (#2063)
35
    - Update geometric networks with new models (#2498)
36
    - Graph edit distance (#2729)
37
    - Added function for finding a k-edge-augmentation (#2572)
38

    
39
  - G.name is no longer processed by graph operators. It remains as a
40
    property mechanism to access ``G.graph['name']`` but the user is in
41
    charge of updating or changing it for copies, subgraphs, unions and
42
    other graph operations.
43

    
44
Improvements
45
------------
46

    
47
  - Many bug fixes, documentation changes.
48
  - Speed improvements especially for subgraphs.
49
  - Changed input variable names for functions using ``**kwds``
50
    to avoid name collisions -- especially ``add_node``
51
  - New examples for arrows and spectral embedding of the grid graph.
52

    
53
API Changes
54
-----------
55

    
56
* [`#2498 <https://github.com/networkx/networkx/pull/2498>`_]
57
  In ``geographical_threshold_graph``, starting in NetworkX 2.1 the parameter
58
  ``alpha`` is deprecated and replaced with the customizable ``p_dist``
59
  function parameter, which defaults to r^-2
60
  if ``p_dist`` is not supplied. To reproduce networks of earlier NetworkX
61
  versions, a custom function needs to be defined and passed as the ``p_dist``
62
  parameter. For example, if the parameter ``alpha`` = 2 was used in NetworkX 2.0,
63
  the custom function def custom_dist(r): r**-2 can be passed in versions >=2.1
64
  as the parameter p_dist = custom_dist to produce an equivalent network.
65
  Note the change in sign from +2 to -2 in this parameter change.
66

    
67
* [`#2554 <https://github.com/networkx/networkx/issues/2554>`_]
68
  New algorithms for finding k-edge-connected components and k-edge-connected
69
  subgraphs in directed and undirected graphs. Efficient implementations are
70
  provided for the special case of k=1 and k=2. The new functionality is
71
  provided by:
72

    
73
     :func:`k_edge_components()`
74

    
75
     :func:`k_edge_subgraphs()`
76

    
77
* [`#2572 <https://github.com/networkx/networkx/issues/2572>`_]
78
  New algorithm finding for finding k-edge-augmentations in undirected graphs.
79
  Efficient implementations are provided for the special case of k=1 and k=2.
80
  New functionality is provided by:
81

    
82
   - :func:`k_edge_augmentation()`
83

    
84
* [`#2812 <https://github.com/networkx/networkx/pull/2812>`_]
85
  Removed ``bellman_ford``, please use
86
  ``bellman_ford_predecessor_and_distance``.
87

    
88
* [`#2811 <https://github.com/networkx/networkx/pull/2811>`_]
89
  Removed ``to_pandas_dataframe`` and ``from_pandas_dataframe``, please use
90
  ``to_pandas_adjacency``, ``from_pandas_adjacency``, ``to_pandas_edgelist``,
91
  or ``from_pandas_edgelist``.
92

    
93
* [`#2766 <https://github.com/networkx/networkx/pull/2766>`_]
94
  Add seed keyword argument to random_layout and spring_layout
95

    
96
* [`#2776 <https://github.com/networkx/networkx/pull/2776>`_]
97
  Add threshold option to spring layout
98

    
99
* [`#2774 <https://github.com/networkx/networkx/pull/2774>`_]
100
  max_weight_matching returns set of edges
101

    
102
* [`#2753 <https://github.com/networkx/networkx/pull/2753>`_]
103
  Add directed graphs support for jit_graph reading
104

    
105
* [`#2788 <https://github.com/networkx/networkx/pull/2788>`_]
106
  Control node-border color in draw_networkx_nodes
107

    
108
Deprecations
109
------------
110

    
111
* [`#2819 <https://github.com/networkx/networkx/pull/2819>`_]
112
  Deprecate ``connected_component_subgraphs``, ``biconnected_component_subgraphs``,
113
  ``attracting_component_subgraphs``, ``strongly_connected_component_subgraphs``,
114
  ``weakly_connected_component_subgraphs``.
115
  Instead use: ``[G.subgraph(c) for c in *_components]``
116

    
117
Contributors to this release
118
----------------------------
119

    
120
- Jack Amadeo
121
- Boskovits
122
- Daniel Bradburn
123
- David Bradway
124
- Ariel Chinn
125
- Jon Crall
126
- Rodrigo Dorantes-Gilardi
127
- Bradley Ellert
128
- Adam Erispaha
129
- Ioannis Filippidis
130
- ForFer
131
- Louis Gatin
132
- Aric Hagberg
133
- Harry
134
- Huston Hedinger
135
- Charles Tapley Hoyt
136
- James Lamb
137
- Sanghack Lee
138
- MD
139
- Cole MacLean
140
- Marco
141
- Jarrod Millman
142
- Sanggyu Nam
143
- Viraj Parimi
144
- Dima Pasechnik
145
- Richard Penney
146
- Naresh Peshwe
147
- Zachary Sailer
148
- Dan Schult
149
- Jordi Torrents
150
- John Wegis
151
- aparamon
152
- aweltsch
153
- gfyoung
154
- md0000
155
- mddddd
156
- talhum
157

    
158

    
159
Pull requests merged in this release
160
------------------------------------
161

    
162
- Update Release Notes for v2.1 (#2839)
163
- Update release notes (#2838)
164
- Update copyright (#2837)
165
- Add a large clique size heuristic function (#2830)
166
- Remove automatic processing of G.name attribute (#2829)
167
- Add rooted product function (#2825)
168
- Label Propagation Community Detection (#2821)
169
- change variable names to avoid kwargs clobber (#2824)
170
- Minimum cycle basis (#2823)
171
- Deprecate component_subgraphs functions (#2819)
172
- Temporarily disable sphinx doctests (#2818)
173
- Adjust docs for graph class edge attrib assignment (#2817)
174
- Add directed graphs support for jit_graph reading (#2753)
175
- Arrows as a plot example. (#2801)
176
- Fix bug in len(edges) for self-loops (#2816)
177
- MRG: Remove ``to_pandas_dataframe`` and ``from_pandas_dataframe`` (#2811)
178
- Fix Pydot tests so works with new version 1.2.4 (#2815)
179
- MRG: Remove ``bellman_ford`` (#2812)
180
- Combine generator modules and tweak docs (#2814)
181
- Legacy array printing for NumPy 1.14+ (#2810)
182
- Fix rare structurally forbidden mappings bug. (#2798)
183
- Digraph Arrows to fix #2757 (#2760)
184
- use a generic Integral type for parameters check (#2800)
185
- Control node-border color in draw_networkx_nodes (#2788)
186
- Add seed keyword argument to random_layout and spring_layout (#2766)
187
- Add Mycielski Operator (#2785)
188
- Adds prefix_tree, dag_to_branching, and example. (#2784)
189
- Add inverse_line_graph generator from #2241 (#2782)
190
- Add docs for steiner_tree and metric_closure (#2783)
191
- Steiner tree and metric closure. (#2252)
192
- Correct docstring for weight parameter (#2781)
193
- Switch to xcode 7.3 for osx_image in .travis.yml (#2780)
194
- Change how sparse6 tests filenames (#2779)
195
- Add flow based node and edge disjoint paths. (#2063)
196
- Update geometric networks with new models (#2498)
197
- [WIP] Graph edit distance 2361 (#2729)
198
- max_weight_matching returns set of edges (#2774)
199
- Avoid keyword and attribute clash (#2775)
200
- Add threshold option to spring layout (#2776)
201
- Fix bug in expected_degree_graph generator (#2773)
202
- Add support for incomplete partitions in quotient_graph. (#2771)
203
- Fix SOURCE_DATE_EPOCH ignored bug (#2735) (#2736)
204
- Makes write_graph6 less memory-intensive. (#2299)
205
- all_simple_paths should not return cycles. Fix issue #2762 (#2770)
206
- Fix typo in write_gml and add test (#2769)
207
- Fix bug and add checks for non-convergent fiedler_vector (#2681)
208
- Dictionary comprehensions from #1700 merged conflicts (#2768)
209
- Fix 2763: Typo `furether` in networkx tutorial documentation (#2764)
210
- Fix #2726: ensure add_path to add the first node (#2759)
211
- a minor correction in docs (#2751)
212
- Speedups for subgraph and copy methods (#2744)
213
- fix typo in tutorial (#2746)
214
- Expand documentation regarding strong connectivity (#2732)
215
- Correct when we raise NetworkXNotImplemented (#2731)
216
- removed list conversion from _triangles_and_degree_iter (#2725)
217
- nx_shp fixes (#2721)
218
- removed reference to create_using from union docs (#2722)
219
- Copy graph in transitive closure algorithm. (#2718)
220
- Fix dag_longest_path bug (#2703)
221
- Fix for inter_community_edges (#2713)
222
- Fix shortest_simple_paths. Issue #2427 (#2712)
223
- Update migration_guide_from_1.x_to_2.0.rst (#2694)
224
- mention `doc.txt` in `requirements/README.md` (#2699)
225
- docs(centrality/dispersion): updating contributor email address (#2698)
226
- Fixes bug #2503 by removing arrow labels (#2696)
227
- Add example of spectral embedding of the grid graph (#2690)
228
- Fix create_using of nx.from_pandas_adjacency() (#2693)
229
- Added function for finding a k-edge-augmentation (#2572)
230
- rm arg `strict` from function `networkx.drawing.nx_pydot.to_pydot` (#2672)
231
- Fixed problem parsing graphml with nodes in groups (#2644)
232
- Remove unused imports (#2653)
233
- Improve subgraph node iteration (#2687)
234
- Added Kamada-Kawai functions to Sphinx documentation (#2680)
235
- unpacked dict to provide kwargs when creating nodes from shapefiles (#2678)
236
- Fix typo in documentation (#2677)