From 4f5330f820a65b8667c978cfb00161e79f2d7865 Mon Sep 17 00:00:00 2001 From: James Gaboardi Date: Wed, 19 Feb 2020 10:34:04 -0500 Subject: [PATCH 01/21] pushing formatted titles --- README.md | 4 +- .../spaghetti.Network.loadnetwork.rst | 6 +++ docsrc/generated/spaghetti.Network.rst | 42 +++++++++++++++++++ .../spaghetti.Network.savenetwork.rst | 6 +++ docsrc/generated/spaghetti.PointPattern.rst | 22 ++++++++++ docsrc/generated/spaghetti.element_as_gdf.rst | 6 +++ .../generated/spaghetti.regular_lattice.rst | 6 +++ docsrc/index.rst | 4 +- 8 files changed, 92 insertions(+), 4 deletions(-) create mode 100644 docsrc/generated/spaghetti.Network.loadnetwork.rst create mode 100644 docsrc/generated/spaghetti.Network.rst create mode 100644 docsrc/generated/spaghetti.Network.savenetwork.rst create mode 100644 docsrc/generated/spaghetti.PointPattern.rst create mode 100644 docsrc/generated/spaghetti.element_as_gdf.rst create mode 100644 docsrc/generated/spaghetti.regular_lattice.rst diff --git a/README.md b/README.md index 39cc92ed..dc13b390 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,8 @@ [pysal/spaghetti](http://pysal.org/spaghetti/) ================================= -SPAtial GrapHs: nETworks, Topology, & Inference -===================================== +*SPA*tial *G*rap*H*s: n*ET*works, *T*opology, & *I*nference +============================================ Spaghetti is an open-source Python library for the analysis of network-based spatial data. Originating from the `network` module in [PySAL (Python Spatial Analysis Library)](http://pysal.org), it is under active development for the inclusion of newly proposed methods for building graph-theoretic networks and the analysis of network events. This package is part of a [refactoring of PySAL](https://github.com/pysal/pysal/wiki/PEP-13:-Refactor-PySAL-Using-Submodules). diff --git a/docsrc/generated/spaghetti.Network.loadnetwork.rst b/docsrc/generated/spaghetti.Network.loadnetwork.rst new file mode 100644 index 00000000..45f9b08e --- /dev/null +++ b/docsrc/generated/spaghetti.Network.loadnetwork.rst @@ -0,0 +1,6 @@ +spaghetti.Network.loadnetwork +============================= + +.. currentmodule:: spaghetti + +.. automethod:: Network.loadnetwork \ No newline at end of file diff --git a/docsrc/generated/spaghetti.Network.rst b/docsrc/generated/spaghetti.Network.rst new file mode 100644 index 00000000..8ab75bac --- /dev/null +++ b/docsrc/generated/spaghetti.Network.rst @@ -0,0 +1,42 @@ +spaghetti.Network +================= + +.. currentmodule:: spaghetti + +.. autoclass:: Network + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~Network.NetworkF + ~Network.NetworkG + ~Network.NetworkK + ~Network.__init__ + ~Network.allneighbordistances + ~Network.compute_distance_to_vertices + ~Network.compute_snap_dist + ~Network.contiguityweights + ~Network.count_per_link + ~Network.distancebandweights + ~Network.enum_links_vertex + ~Network.extract_components + ~Network.extractgraph + ~Network.full_distance_matrix + ~Network.loadnetwork + ~Network.nearestneighbordistances + ~Network.savenetwork + ~Network.shortest_paths + ~Network.simulate_observations + ~Network.snapobservations + ~Network.split_arcs + + + + + + \ No newline at end of file diff --git a/docsrc/generated/spaghetti.Network.savenetwork.rst b/docsrc/generated/spaghetti.Network.savenetwork.rst new file mode 100644 index 00000000..ea76420f --- /dev/null +++ b/docsrc/generated/spaghetti.Network.savenetwork.rst @@ -0,0 +1,6 @@ +spaghetti.Network.savenetwork +============================= + +.. currentmodule:: spaghetti + +.. automethod:: Network.savenetwork \ No newline at end of file diff --git a/docsrc/generated/spaghetti.PointPattern.rst b/docsrc/generated/spaghetti.PointPattern.rst new file mode 100644 index 00000000..50a4e29e --- /dev/null +++ b/docsrc/generated/spaghetti.PointPattern.rst @@ -0,0 +1,22 @@ +spaghetti.PointPattern +====================== + +.. currentmodule:: spaghetti + +.. autoclass:: PointPattern + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~PointPattern.__init__ + + + + + + \ No newline at end of file diff --git a/docsrc/generated/spaghetti.element_as_gdf.rst b/docsrc/generated/spaghetti.element_as_gdf.rst new file mode 100644 index 00000000..b291895c --- /dev/null +++ b/docsrc/generated/spaghetti.element_as_gdf.rst @@ -0,0 +1,6 @@ +spaghetti.element\_as\_gdf +========================== + +.. currentmodule:: spaghetti + +.. autofunction:: element_as_gdf \ No newline at end of file diff --git a/docsrc/generated/spaghetti.regular_lattice.rst b/docsrc/generated/spaghetti.regular_lattice.rst new file mode 100644 index 00000000..6cdc66be --- /dev/null +++ b/docsrc/generated/spaghetti.regular_lattice.rst @@ -0,0 +1,6 @@ +spaghetti.regular\_lattice +========================== + +.. currentmodule:: spaghetti + +.. autofunction:: regular_lattice \ No newline at end of file diff --git a/docsrc/index.rst b/docsrc/index.rst index 383a764d..9d7930c1 100644 --- a/docsrc/index.rst +++ b/docsrc/index.rst @@ -3,8 +3,8 @@ `spaghetti` =========== -SPAtial GrapHs: nETworks, Topology, & Inference ------------------------------------------------ +**SPA**\ tial **G**\ rap\ **H**\ s: n\ **ET**\ works, **T**\ opology, & **I**\ nference +--------------------------------------------------------------------------------------- `Spaghetti` is an open-source Python library for the analysis of network-based spatial data. Originating from the `network` module in `PySAL (Python Spatial From 4625d99de618a97f352bb3909e785c8e71c73ea8 Mon Sep 17 00:00:00 2001 From: James Gaboardi Date: Wed, 19 Feb 2020 10:34:54 -0500 Subject: [PATCH 02/21] pushing formatted titles [2] --- docs/_sources/index.rst.txt | 4 ++-- docs/index.html | 4 ++-- docs/searchindex.js | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/_sources/index.rst.txt b/docs/_sources/index.rst.txt index 383a764d..9d7930c1 100644 --- a/docs/_sources/index.rst.txt +++ b/docs/_sources/index.rst.txt @@ -3,8 +3,8 @@ `spaghetti` =========== -SPAtial GrapHs: nETworks, Topology, & Inference ------------------------------------------------ +**SPA**\ tial **G**\ rap\ **H**\ s: n\ **ET**\ works, **T**\ opology, & **I**\ nference +--------------------------------------------------------------------------------------- `Spaghetti` is an open-source Python library for the analysis of network-based spatial data. Originating from the `network` module in `PySAL (Python Spatial diff --git a/docs/index.html b/docs/index.html index 0b55b143..5715fdd2 100644 --- a/docs/index.html +++ b/docs/index.html @@ -100,7 +100,7 @@ role="menu" aria-labelledby="dLabelLocalToc"> +

I

+ + +
+

L

+ + @@ -1118,21 +1120,25 @@

Associate both the supply and demand schools with the network and plot0

+ + + +
@@ -370,8 +402,10 @@

Identifying and visualizing the parts of a networkThis notebook is a walk-through for:

  1. Instantiating a simple network with libpysal.cg.Chain objects

  2. -
  3. Working with the network components

  4. +
  5. Working with the network components and isolated rings

  6. Visualizing the components and (non)articulation vertices

  7. +
  8. Longest vs. Largest components

  9. +
  10. Extracting network components

[1]:
@@ -388,7 +422,7 @@ 

Identifying and visualizing the parts of a network -
-

The network components can be inspected through the network_component2arc attribute

+
+

It has 2 connected components

[7]:
 
-ntw.network_component2arc
+ntw.network_n_components
 
@@ -524,31 +564,41 @@

The network components can be inspected through the
-{0: [(0, 1), (0, 2), (0, 3)], 1: [(4, 5), (4, 6), (4, 7)]}
+2
 

-
-

Extract the network arc and vertices as geopandas.GeoDataFrame objects

-
+
+

The network components can be inspected through the following attributes

+
+

network_component_labels

+
[8]:
 
-# network vertices and arcs
-vertices_df, arcs_df = spaghetti.element_as_gdf(ntw, vertices=True, arcs=True)
+ntw.network_component_labels
 
+
+
[8]:
+
-
-

Network component labels are found in the "comp_label" field

+
+
+array([0, 0, 0, 1, 1, 1], dtype=int32)
+
+
+
+
+

network_component2arc

[9]:
 
-arcs_df
+ntw.network_component2arc
 
@@ -556,143 +606,83 @@

Network component labels are found in the
[9]:
 

-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
idgeometrycomp_label
0(0, 1)LINESTRING (1.00000 2.00000, 0.00000 2.00000)0
1(0, 2)LINESTRING (1.00000 2.00000, 1.00000 1.00000)0
2(0, 3)LINESTRING (1.00000 2.00000, 1.00000 3.00000)0
3(4, 5)LINESTRING (2.00000 1.00000, 2.00000 0.00000)1
4(4, 6)LINESTRING (2.00000 1.00000, 3.00000 1.00000)1
5(4, 7)LINESTRING (2.00000 1.00000, 2.00000 2.00000)1
-
+
+
+{0: [(0, 1), (0, 2), (0, 3)], 1: [(4, 5), (4, 6), (4, 7)]}
+
-
-

Plot the disconnected network and symbolize the arcs bases on the value of "comp_label"

+
+

network_component_lengths

[10]:
 
-base = arcs_df.plot(column="comp_label", cmap="Set2", linewidth=5, figsize=(7, 7))
-vertices_df.plot(ax=base, color="k", markersize=100, zorder=2);
+ntw.network_component_lengths
 
-
+
[10]:
+
-../_images/notebooks_connected-components_16_0.png -
-
+
+{0: 3.0, 1: 3.0}
+
-
-
-

2. Add to the network created above

-
+
+

network_longest_component

+
[11]:
 
-new_lines = [
-    Chain([Point([1, 1]), Point([2, 2])]),
-    Chain([Point([0.5, 1]), Point([0.5, 0.5])]),
-    Chain([Point([0.5, 0.5]), Point([1, 0.5])]),
-    Chain([Point([2, 2.5]), Point([2.5, 2.5])]),
-    Chain([Point([2.5, 2.5]), Point([2.5, 2])]),
-]
-lines += new_lines
+ntw.network_longest_component
+
+
+
+
+
[11]:
 
+
+
+0
+
+
+
+

network_component_vertices

[12]:
 
-ntw = spaghetti.Network(in_data=lines)
+ntw.network_component_vertices
 
-
+
[12]:
+
-
+
-/Users/jgaboardi/miniconda3/envs/py3_spgh_dev/lib/python3.7/site-packages/libpysal/weights/weights.py:167: UserWarning: The weights matrix is not fully connected:
- There are 3 disconnected components.
-  warnings.warn(message)
-/Users/jgaboardi/miniconda3/envs/py3_spgh_dev/lib/python3.7/site-packages/libpysal/weights/weights.py:167: UserWarning: The weights matrix is not fully connected:
- There are 3 disconnected components.
- There are 2 islands with ids: (8, 10), (11, 13).
-  warnings.warn(message)
+{0: [0, 1, 2, 3], 1: [4, 5, 6, 7]}
 
-
-

Now there are 3 connected components in the network

+
+
+

network_component_vertex_count

[13]:
 
-ntw.network_n_components
+ntw.network_component_vertex_count
 
@@ -702,15 +692,18 @@

Now there are 3 connected components in the network
-3
+{0: 4, 1: 4}
 

+
+
+

network_largest_component

[14]:
 
-ntw.network_component2arc
+ntw.network_largest_component
 
@@ -720,27 +713,42 @@

Now there are 3 connected components in the network
-{0: [(0, 1), (0, 2), (0, 3), (2, 7), (4, 5), (4, 6), (4, 7)],
- 1: [(8, 9), (9, 10)],
- 2: [(11, 12), (12, 13)]}
+0
 

-
+
+
+

network_component_is_ring

+
[15]:
 
-# network vertices and arcs
-vertices_df, arcs_df = spaghetti.element_as_gdf(ntw, vertices=True, arcs=True)
+ntw.network_component_is_ring
+
+
+
+
+
[15]:
 
+
+
+{0: False, 1: False}
+
+
+
+
+

The same can be performed for graph representations, for example:

+
+

graph_component_labels

[16]:
 
-arcs_df
+ntw.graph_component_labels
 
@@ -748,6 +756,62 @@

Now there are 3 connected components in the network
[16]:
 

+
+
+array([0, 0, 0, 1, 1, 1], dtype=int32)
+
+
+
+
+

graph_component2edge

+
+
[17]:
+
+
+
+ntw.graph_component2edge
+
+
+
+
+
[17]:
+
+
+
+
+{0: [(0, 1), (0, 2), (0, 3)], 1: [(4, 5), (4, 6), (4, 7)]}
+
+
+
+
+
+

Extract the network arc and vertices as geopandas.GeoDataFrame objects

+
+
[18]:
+
+
+
+# network vertices and arcs
+vertices_df, arcs_df = spaghetti.element_as_gdf(ntw, vertices=True, arcs=True)
+
+
+
+
+
+

Network component labels are found in the "comp_label" field

+
+
[19]:
+
+
+
+vertices_df
+
+
+
+
+
[19]:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
idgeometrycomp_label
0(0, 1)LINESTRING (1.00000 2.00000, 0.00000 2.00000)0
1(0, 2)LINESTRING (1.00000 2.00000, 1.00000 1.00000)0
2(0, 3)LINESTRING (1.00000 2.00000, 1.00000 3.00000)0
3(4, 5)LINESTRING (2.00000 1.00000, 2.00000 0.00000)1
4(4, 6)LINESTRING (2.00000 1.00000, 3.00000 1.00000)1
5(4, 7)LINESTRING (2.00000 1.00000, 2.00000 2.00000)1
+
-
-

Slice out the articulation points and non-articulation points

-
-
[18]:
+
+

Plot the disconnected network and symbolize the arcs bases on the value of "comp_label"

+
+
[21]:
 
-napts = ntw.non_articulation_points
-articulation_vertices = vertices_df[~vertices_df["id"].isin(napts)]
-non_articulation_vertices = vertices_df[vertices_df["id"].isin(napts)]
+base = arcs_df.plot(column="comp_label", cmap="Set2", linewidth=5, figsize=(7, 7))
+vertices_df.plot(ax=base, color="k", markersize=100, zorder=2)
 
-
-
-

Plot the connected components while making a distinction between articulation points and non-articulation points

-
-
[19]:
-
-
-
-base = arcs_df.plot(column="comp_label", cmap="Set2", linewidth=5, figsize=(7, 7))
-articulation_vertices.plot(ax=base, color="k", markersize=100, zorder=2)
-non_articulation_vertices.plot(ax=base, marker="s", color="k", markersize=20, zorder=2);
+
+
[21]:
 
+
+
+<matplotlib.axes._subplots.AxesSubplot at 0x10c9c4320>
+
-../_images/notebooks_connected-components_30_0.png +../_images/notebooks_connected-components_37_1.png

-
-

3. Add a loop of libpysal.cg.Chain objects

+
+

2. Add to the network created above

-
[20]:
+
[22]:
 
 new_lines = [
-    Chain([Point([3, 1]), Point([3.25, 1.25])]),
-    Chain([Point([3.25, 1.25]), Point([3.5, 1.25])]),
-    Chain([Point([3.5, 1.25]), Point([3.75, 1])]),
-    Chain([Point([3.75, 1]), Point([3.5, .75])]),
-    Chain([Point([3.5, .75]), Point([3.25, .75])]),
-    Chain([Point([3.25, .75]), Point([3, 1])]),
+    Chain([Point([1, 1]), Point([2, 2])]),
+    Chain([Point([0.5, 1]), Point([0.5, 0.5])]),
+    Chain([Point([0.5, 0.5]), Point([1, 0.5])]),
+    Chain([Point([2, 2.5]), Point([2.5, 2.5])]),
+    Chain([Point([2.5, 2.5]), Point([2.5, 2])]),
 ]
 lines += new_lines
 
-
[21]:
+
[23]:
 
@@ -944,8 +1040,10 @@ 

3. Add a loop of +

Now there are 3 connected components in the network

-
[22]:
+
[24]:
 
@@ -954,7 +1052,7 @@ 

3. Add a loop of -
[22]:
+
[24]:
 
@@ -963,7 +1061,7 @@

3. Add a loop of -
[23]:
+
[25]:
 
@@ -972,30 +1070,18 @@ 

3. Add a loop of -
[23]:
+
[25]:
 
-{0: [(0, 1),
-  (0, 2),
-  (0, 3),
-  (2, 7),
-  (4, 5),
-  (4, 6),
-  (4, 7),
-  (6, 14),
-  (6, 18),
-  (14, 15),
-  (15, 16),
-  (16, 17),
-  (17, 18)],
+{0: [(0, 1), (0, 2), (0, 3), (2, 7), (4, 5), (4, 6), (4, 7)],
  1: [(8, 9), (9, 10)],
  2: [(11, 12), (12, 13)]}
 
-
[24]:
+
[26]:
 
@@ -1005,7 +1091,7 @@ 

3. Add a loop of -
[25]:
+
[27]:
 
@@ -1014,7 +1100,7 @@ 

3. Add a loop of -
[25]:
+
[27]:
 
@@ -1086,72 +1172,37 @@

3. Add a loop of -

Here we can see that all the new network vertices are non-articulation point

+

+
+

We can also inspect the non-articulation points in the network. Non-articulation points are vertices in a network that are degree-2. A vertex is degree-2 if, and only if, it is directly connected to only 2 other vertices.

-
[26]:
+
[28]:
 
@@ -1160,19 +1211,19 @@ 

Here we can see that all the new network vertices are non-articulation point

-
[26]:
+
[28]:
 
-[2, 7, 9, 12, 14, 15, 16, 17, 18]
+[9, 2, 12, 7]
 

Slice out the articulation points and non-articulation points

-
[27]:
+
[29]:
 
@@ -1183,24 +1234,758 @@ 

Slice out the articulation points and non-articulation points -

The new network vertices are non-articulation points because they form a closed ring

+
+

Plot the connected components while making a distinction between articulation points and non-articulation points

-
[28]:
+
[30]:
 
 base = arcs_df.plot(column="comp_label", cmap="Set2", linewidth=5, figsize=(7, 7))
 articulation_vertices.plot(ax=base, color="k", markersize=100, zorder=2)
-non_articulation_vertices.plot(ax=base, marker="s", color="k", markersize=20, zorder=2);
+non_articulation_vertices.plot(ax=base, marker="s", color="k", markersize=20, zorder=2)
+
+
+
+
+
[30]:
 
+
+
+<matplotlib.axes._subplots.AxesSubplot at 0x12ce86ef0>
+
+
+
+
+
+
+../_images/notebooks_connected-components_51_1.png +
+
+
+
+
+
+

3. Add a loop of libpysal.cg.Chain objects

+
+
[31]:
+
+
+
+new_lines = [
+    Chain([Point([3, 1]), Point([3.25, 1.25])]),
+    Chain([Point([3.25, 1.25]), Point([3.5, 1.25])]),
+    Chain([Point([3.5, 1.25]), Point([3.75, 1])]),
+    Chain([Point([3.75, 1]), Point([3.5, 0.75])]),
+    Chain([Point([3.5, 0.75]), Point([3.25, 0.75])]),
+    Chain([Point([3.25, 0.75]), Point([3, 1])]),
+]
+lines += new_lines
+
+
+
+
+
[32]:
+
+
+
+ntw = spaghetti.Network(in_data=lines)
+
+
+
+
+
+
+
+
+/Users/jgaboardi/miniconda3/envs/py3_spgh_dev/lib/python3.7/site-packages/libpysal/weights/weights.py:167: UserWarning: The weights matrix is not fully connected:
+ There are 3 disconnected components.
+  warnings.warn(message)
+/Users/jgaboardi/miniconda3/envs/py3_spgh_dev/lib/python3.7/site-packages/libpysal/weights/weights.py:167: UserWarning: The weights matrix is not fully connected:
+ There are 3 disconnected components.
+ There are 2 islands with ids: (8, 10), (11, 13).
+  warnings.warn(message)
+
+
+
+
[33]:
+
+
+
+ntw.network_n_components
+
+
+
+
+
[33]:
+
+
+
+
+3
+
+
+
+
[34]:
+
+
+
+ntw.network_component2arc
+
+
+
+
+
[34]:
+
+
+
+
+{0: [(0, 1),
+  (0, 2),
+  (0, 3),
+  (2, 7),
+  (4, 5),
+  (4, 6),
+  (4, 7),
+  (6, 14),
+  (6, 18),
+  (14, 15),
+  (15, 16),
+  (16, 17),
+  (17, 18)],
+ 1: [(8, 9), (9, 10)],
+ 2: [(11, 12), (12, 13)]}
+
+
+
+
[35]:
+
+
+
+# network vertices and arcs
+vertices_df, arcs_df = spaghetti.element_as_gdf(ntw, vertices=True, arcs=True)
+
+
+
+
+
[36]:
+
+
+
+arcs_df
+
+
+
+
+
[36]:
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
idgeometrycomp_label
0(0, 1)LINESTRING (1.00000 2.00000, 0.00000 2.00000)0
1(0, 2)LINESTRING (1.00000 2.00000, 1.00000 1.00000)0
2(0, 3)LINESTRING (1.00000 2.00000, 1.00000 3.00000)0
3(2, 7)LINESTRING (1.00000 1.00000, 2.00000 2.00000)0
4(4, 5)LINESTRING (2.00000 1.00000, 2.00000 0.00000)0
5(4, 6)LINESTRING (2.00000 1.00000, 3.00000 1.00000)0
6(4, 7)LINESTRING (2.00000 1.00000, 2.00000 2.00000)0
7(6, 14)LINESTRING (3.00000 1.00000, 3.25000 1.25000)0
8(6, 18)LINESTRING (3.00000 1.00000, 3.25000 0.75000)0
9(8, 9)LINESTRING (0.50000 1.00000, 0.50000 0.50000)1
10(9, 10)LINESTRING (0.50000 0.50000, 1.00000 0.50000)1
11(11, 12)LINESTRING (2.00000 2.50000, 2.50000 2.50000)2
12(12, 13)LINESTRING (2.50000 2.50000, 2.50000 2.00000)2
13(14, 15)LINESTRING (3.25000 1.25000, 3.50000 1.25000)0
14(15, 16)LINESTRING (3.50000 1.25000, 3.75000 1.00000)0
15(16, 17)LINESTRING (3.75000 1.00000, 3.50000 0.75000)0
16(17, 18)LINESTRING (3.50000 0.75000, 3.25000 0.75000)0
+
+
+
+

Here we can see that all the new network vertices are non-articulation point

+
+
[37]:
+
+
+
+ntw.non_articulation_points
+
+
+
+
+
[37]:
+
+
+
+
+[2, 7, 9, 12, 14, 15, 16, 17, 18]
+
+
+
+
+

Slice out the articulation points and non-articulation points

+
+
[38]:
+
+
+
+napts = ntw.non_articulation_points
+articulation_vertices = vertices_df[~vertices_df["id"].isin(napts)]
+non_articulation_vertices = vertices_df[vertices_df["id"].isin(napts)]
+
+
+
+
+
+

The new network vertices are non-articulation points because they form a closed ring

+
+
[39]:
+
+
+
+base = arcs_df.plot(column="comp_label", cmap="Set2", linewidth=5, figsize=(7, 7))
+articulation_vertices.plot(ax=base, color="k", markersize=100, zorder=2)
+non_articulation_vertices.plot(ax=base, marker="s", color="k", markersize=20, zorder=2)
+
+
+
+
+
[39]:
+
+
+
+
+<matplotlib.axes._subplots.AxesSubplot at 0x12d5e78d0>
+
+
+
+
+
+
+../_images/notebooks_connected-components_64_1.png +
+
+
+
+
+
+

4. Longest vs. largest components — cross vs. hexagon

+
+
[40]:
+
+
+
+cross = [
+    Chain([Point([0, 5]), Point([5, 5]), Point([5, 10])]),
+    Chain([Point([5, 0]), Point([5, 5]), Point([10, 5])]),
+]
+hexagon = [
+    Chain(
+        [
+            Point([12, 5]),
+            Point([13, 6]),
+            Point([14, 6]),
+            Point([15, 5]),
+            Point([14, 4]),
+            Point([13, 4]),
+            Point([12, 5]),
+        ]
+    ),
+]
+lines = cross + hexagon
+
+
+
+
+
[41]:
+
+
+
+ntw = spaghetti.Network(in_data=lines)
+
+
+
+
+
+
+
+
+/Users/jgaboardi/miniconda3/envs/py3_spgh_dev/lib/python3.7/site-packages/libpysal/weights/weights.py:167: UserWarning: The weights matrix is not fully connected:
+ There are 2 disconnected components.
+  warnings.warn(message)
+
+
+
+
[42]:
+
+
+
+# network vertices and arcs
+vertices_df, arcs_df = spaghetti.element_as_gdf(ntw, vertices=True, arcs=True)
+
+
+
+
+
[43]:
+
+
+
+base = arcs_df.plot(column="comp_label", cmap="Set2", linewidth=5, figsize=(7, 7))
+vertices_df.plot(ax=base, color="k", markersize=100, zorder=2)
+
+
+
+
+
[43]:
+
+
+
+
+<matplotlib.axes._subplots.AxesSubplot at 0x12d92c4a8>
+
+
+
+
+
+
+../_images/notebooks_connected-components_70_1.png +
+
+
+

The longest component is not necessarily the largest

+
+

This is because in spaghetti the largest compnent equates to the most vertices

+
+
[44]:
+
+
+
+clongest = ntw.network_longest_component
+clength = round(ntw.network_component_lengths[clongest], 5)
+clargest = ntw.network_largest_component
+cverts = ntw.network_component_vertex_count[clargest]
+print("The longest component is %s at %s units of distance." % (clongest, clength))
+print("The largest component is %s with %s vertices." % (clargest, cverts))
+
+
+
+
+
+
+
+
+The longest component is 0 at 20.0 units of distance.
+The largest component is 1 with 6 vertices.
+
+
+
+
+
+
+

5. Extracting components

+
+

Extract the longest component

+
+
[45]:
+
+
+
+longest = spaghetti.extract_component(ntw, ntw.network_longest_component)
+
+
+
+
+
[46]:
+
+
+
+# network vertices and arcs
+vertices_df, arcs_df = spaghetti.element_as_gdf(longest, vertices=True, arcs=True)
+
+
+
+
+
[47]:
+
+
+
+vertices_df
+
+
+
+
+
[47]:
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
idgeometrycomp_label
00POINT (0.00000 5.00000)0
11POINT (5.00000 5.00000)0
22POINT (5.00000 10.00000)0
33POINT (5.00000 0.00000)0
44POINT (10.00000 5.00000)0
+
+
+
+
[48]:
+
+
+
+base = arcs_df.plot(column="comp_label", cmap="Set2", linewidth=5, figsize=(7, 7))
+vertices_df.plot(ax=base, color="k", markersize=100, zorder=2)
+
+
+
+
+
[48]:
+
+
+
+
+<matplotlib.axes._subplots.AxesSubplot at 0x12dbef128>
+
+
+
+
+
+
+../_images/notebooks_connected-components_77_1.png +
+
+
+
+

Extract the largest component and plot

+
+
[49]:
+
+
+
+largest = spaghetti.extract_component(ntw, ntw.network_largest_component)
+# network vertices and arcs
+vertices_df, arcs_df = spaghetti.element_as_gdf(largest, vertices=True, arcs=True)
+base = arcs_df.plot(column="comp_label", cmap="Set2", linewidth=5, figsize=(7, 7))
+vertices_df.plot(ax=base, color="k", markersize=100, zorder=2)
+
+
+
+
+
[49]:
+
+
+
+
+<matplotlib.axes._subplots.AxesSubplot at 0x12de67da0>
+
+
+
+
+
+
+../_images/notebooks_connected-components_79_1.png +
+
+
+
+

Empirical Example — New Haven, Connecticut

+
+
[50]:
+
+
+
+newhaven = libpysal.examples.get_path("newhaven_nework.shp")
+ntw = spaghetti.Network(in_data=newhaven, extractgraph=False)
+
+
+
+
+
+
+
+
+/Users/jgaboardi/miniconda3/envs/py3_spgh_dev/lib/python3.7/site-packages/libpysal/weights/weights.py:167: UserWarning: The weights matrix is not fully connected:
+ There are 21 disconnected components.
+ There are 7 islands with ids: (1494, 1495), (2129, 2130), (3756, 3757), (8669, 8670), (9611, 9612), (11152, 11153), (11228, 11229).
+  warnings.warn(message)
+
+
+
+
+

Extract the longest component

+
+
[51]:
+
+
+
+longest = spaghetti.extract_component(ntw, ntw.network_longest_component)
+
+
+
+
+
[52]:
+
+
+
+# network vertices and arcs
+vertices_df, arcs_df = spaghetti.element_as_gdf(ntw, vertices=True, arcs=True)
+arcs_df.crs = "epsg:4269"
+arcs_df = arcs_df.to_crs("epsg:6433")
+
+
+
+
+
[53]:
+
+
+
+# longest vertices and arcs
+lc_vertices, lc_arcs = spaghetti.element_as_gdf(longest, vertices=True, arcs=True)
+lc_arcs.crs = "epsg:4269"
+lc_arcs = lc_arcs.to_crs("epsg:6433")
+
+
+
+
+
+

Filter non-longest component arcs

+
+
[54]:
+
+
+
+nlc = ntw.network_longest_component
+arcs_df = arcs_df[arcs_df.comp_label != nlc]
+ocomp = list(set(ntw.network_component_labels))
+ocomp.remove(nlc)
+
+
+
+
+
+

Plot network arcs

+
+
[55]:
+
+
+
+def legend(objects):
+    """Add a legend to a plot"""
+    patches = make_patches(*objects)
+    kws = {"fancybox": True, "framealpha": 0.85, "fontsize": "x-large"}
+    kws.update({"loc": "lower left", "labelspacing": 2.0, "borderpad": 2.0})
+    legend = matplotlib.pyplot.legend(handles=patches, **kws)
+    legend.get_frame().set_facecolor("white")
+
+
+
+
+
[56]:
+
+
+
+def make_patches(comp_type, in_comp, oc):
+    """Create patches for legend"""
+    labels_colors_alpha = [
+        ["%s component: %s" % (comp_type.capitalize(), in_comp), "k", 0.5],
+        ["Other components: %s-%s" % (oc[0], oc[1]), "r", 1],
+    ]
+    patches = []
+    for l, c, a in labels_colors_alpha:
+        p = matplotlib.lines.Line2D([], [], lw=2, label=l, c=c, alpha=a)
+        patches.append(p)
+    return patches
+
+
+
+
+
[57]:
+
+
+
+base = arcs_df.plot(color="r", alpha=1, linewidth=3, figsize=(10, 10))
+lc_arcs.plot(ax=base, color="k", linewidth=2, alpha=0.5, zorder=2)
+# add legend
+legend(("longest", nlc, (ocomp[0], ocomp[-1])))
+# add scale bar
+scalebar = ScaleBar(3, units="m", location="lower right")
+base.add_artist(scalebar)
+
+
+
+
+
[57]:
+
+
+
+
+<matplotlib_scalebar.scalebar.ScaleBar at 0x12fdc3d30>
+
-../_images/notebooks_connected-components_43_0.png +../_images/notebooks_connected-components_91_1.png
diff --git a/docs/notebooks/facility-location.html b/docs/notebooks/facility-location.html index 168f5dae..2224b3fb 100644 --- a/docs/notebooks/facility-location.html +++ b/docs/notebooks/facility-location.html @@ -3,7 +3,7 @@ - Demostrating network-based optimal facility location modeling — spaghetti v1.4.1 Manual + Demostrating network-based optimal facility location modeling — spaghetti v1.4.2 Manual @@ -42,7 +42,7 @@ spaghetti - 1.4.1 + 1.4.2
-2020-02-18T21:06:37-05:00
+2020-02-23T16:45:36-05:00
 
 CPython 3.7.3
 IPython 7.10.2
@@ -445,15 +445,15 @@ 

Integrating pys
 watermark 2.0.2
-ortools             7.4.7247
-matplotlib          3.1.2
 libpysal            4.2.0
-spaghetti           1.4.1
-geopandas           0.6.2
+matplotlib          3.1.2
+ortools             7.4.7247
+spaghetti           1.4.2
 shapely             1.7.0
-matplotlib_scalebar 0.6.1
-numpy               1.17.3
 seaborn             0.9.0
+numpy               1.17.3
+matplotlib_scalebar 0.6.1
+geopandas           0.6.2
 
 

@@ -2242,7 +2242,7 @@

3.1 Location Set Covering Problem @@ -2346,7 +2346,7 @@

3.3 p-center Problem
-Solve Time: 0.0509334352 minutes
+Solve Time: 0.0540334414 minutes
 Obj. Value: 1024.6199825236833 worst case distance with 3 selected facilities
 

@@ -2396,7 +2396,7 @@

3.4 Maximal Covering Location Problem
-Solve Time: 0.0033666734000000003 minutes
+Solve Time: 0.0043666754000000006 minutes
 Obj. Value: 1312.0 residents within 800.000000 meters of 3 selected facilities
 Percent of 1598 clients covered: 82.102628
 --- 73 clients are not covered
@@ -2462,86 +2462,86 @@ 

3.6 Distance analytics matrix + }
{'abs_min': 'Absolute min dist to assigned facility', 'abs_max': 'Absolute max dist to assigned facility', 'mean_means': 'Mean of mean dists per client to assigned facility', 'mean_stds': 'Mean of StD dists per client to assigned facility'}
stats lscp pmp pcp mclp
- - - - - - + + + + + + - - - - - - + + + + + + - - - - - - + + + + + + - - - - - - + + + + + +
{'abs_min': 'Absolute min dist to assigned facility', 'abs_max': 'Absolute max dist to assigned facility', 'mean_means': 'Mean of mean dists per client to assigned facility', 'mean_stds': 'Mean of StD dists per client to assigned facility'}
stats lscp pmp pcp mclp
0abs_min0.9189220.91892212.74550.9189220abs_min0.9189220.91892212.74550.918922
1abs_max998.5261224.281024.62799.2281abs_max998.5261224.281024.62799.228
2mean_means645.324565.138591.621497.5172mean_means645.324565.138591.621497.517
3mean_stds245.521263.8244.652214.7083mean_stds245.521263.8244.652214.708

@@ -2581,270 +2581,270 @@

3.7 Selection matrix
+ }
lscp pmp pcp mclp $\sum$ $\%$
- - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + +
lscp pmp pcp mclp $\sum$ $\%$
y[0]$\notin$$\notin$$\notin$$\notin$00y[0]$\notin$$\notin$$\notin$$\notin$00
y[1]$\notin$$\notin$$\in$$\notin$125y[1]$\notin$$\notin$$\in$$\notin$125
y[2]$\notin$$\notin$$\notin$$\notin$00y[2]$\notin$$\notin$$\notin$$\notin$00
y[3]$\in$$\notin$$\in$$\notin$250y[3]$\in$$\notin$$\in$$\notin$250
y[4]$\in$$\in$$\notin$$\in$375y[4]$\in$$\in$$\notin$$\in$375
y[5]$\notin$$\notin$$\notin$$\notin$00y[5]$\notin$$\notin$$\notin$$\notin$00
y[6]$\in$$\in$$\in$$\in$4100y[6]$\in$$\in$$\in$$\in$4100
y[7]$\notin$$\notin$$\notin$$\notin$00y[7]$\notin$$\notin$$\notin$$\notin$00
y[8]$\notin$$\notin$$\notin$$\notin$00y[8]$\notin$$\notin$$\notin$$\notin$00
y[9]$\in$$\notin$$\notin$$\notin$125y[9]$\in$$\notin$$\notin$$\notin$125
y[10]$\notin$$\notin$$\notin$$\notin$00y[10]$\notin$$\notin$$\notin$$\notin$00
y[11]$\notin$$\notin$$\notin$$\notin$00y[11]$\notin$$\notin$$\notin$$\notin$00
y[12]$\notin$$\in$$\notin$$\in$250y[12]$\notin$$\in$$\notin$$\in$250
y[13]$\notin$$\notin$$\notin$$\notin$00y[13]$\notin$$\notin$$\notin$$\notin$00

diff --git a/docs/notebooks/network-analysis.html b/docs/notebooks/network-analysis.html index 7d0f60c6..46b7e743 100644 --- a/docs/notebooks/network-analysis.html +++ b/docs/notebooks/network-analysis.html @@ -3,7 +3,7 @@ - Spatial network analysis — spaghetti v1.4.1 Manual + Spatial network analysis — spaghetti v1.4.2 Manual @@ -42,7 +42,7 @@ spaghetti - 1.4.1 + 1.4.2
@@ -498,8 +498,8 @@

2. Allocating observations (snapping points) to a network:
-{'crimes': <spaghetti.network.PointPattern at 0x1245ea240>,
- 'schools': <spaghetti.network.PointPattern at 0x1246402b0>}
+{'crimes': <spaghetti.network.PointPattern at 0x10ab57fd0>,
+ 'schools': <spaghetti.network.PointPattern at 0x124992048>}
 

Attributes for every point pattern

diff --git a/docs/notebooks/quickstart.html b/docs/notebooks/quickstart.html index 823d49d8..0a8d6cd8 100644 --- a/docs/notebooks/quickstart.html +++ b/docs/notebooks/quickstart.html @@ -3,7 +3,7 @@ - Quickstart — spaghetti v1.4.1 Manual + Quickstart — spaghetti v1.4.2 Manual @@ -42,7 +42,7 @@
spaghetti - 1.4.1 + 1.4.2
diff --git a/docs/notebooks/shortest-path-visualization.html b/docs/notebooks/shortest-path-visualization.html index 05c3a30a..c3ee3a25 100644 --- a/docs/notebooks/shortest-path-visualization.html +++ b/docs/notebooks/shortest-path-visualization.html @@ -3,7 +3,7 @@ - Generating regular lattices and visualizing shortest paths — spaghetti v1.4.1 Manual + Generating regular lattices and visualizing shortest paths — spaghetti v1.4.2 Manual @@ -42,7 +42,7 @@ spaghetti - 1.4.1 + 1.4.2
-[[(0, 1), <libpysal.cg.shapes.Chain at 0x1235e9f28>],
- [(0, 2), <libpysal.cg.shapes.Chain at 0x123621c88>],
- [(1, 2), <libpysal.cg.shapes.Chain at 0x123621eb8>]]
+[[(0, 1), <libpysal.cg.shapes.Chain at 0x12525cef0>],
+ [(0, 2), <libpysal.cg.shapes.Chain at 0x1254604a8>],
+ [(1, 2), <libpysal.cg.shapes.Chain at 0x1262449e8>]]
 
diff --git a/docs/notebooks/transportation-problem.html b/docs/notebooks/transportation-problem.html index 094e0a14..041957c2 100644 --- a/docs/notebooks/transportation-problem.html +++ b/docs/notebooks/transportation-problem.html @@ -3,7 +3,7 @@ - The Transportation Problem — spaghetti v1.4.1 Manual + The Transportation Problem — spaghetti v1.4.2 Manual @@ -42,7 +42,7 @@ spaghetti - 1.4.1 + 1.4.2
-2020-02-18T20:54:04-05:00
+2020-02-23T16:43:34-05:00
 
 CPython 3.7.3
 IPython 7.10.2
@@ -440,12 +440,12 @@ 

Integrating pys
 Using Python-MIP package version 1.6.8
 watermark 2.0.2
-matplotlib_scalebar 0.6.1
-geopandas           0.6.2
-spaghetti           1.4.1
 matplotlib          3.1.2
-numpy               1.17.3
 mip                 1.6.8
+numpy               1.17.3
+matplotlib_scalebar 0.6.1
+geopandas           0.6.2
+spaghetti           1.4.2
 
 

@@ -1106,11 +1106,13 @@

Associate both the supply and demand schools with the network and plot

id geometrycomp_label
supply snapped
0 POINT (221677.280 268183.579)0
1 1 POINT (221538.890 268184.326)0
2 2 POINT (221847.381 267926.950)0
3 3 POINT (221406.647 268046.397)0
@@ -1177,11 +1183,13 @@

Associate both the supply and demand schools with the network and plot id geometry + comp_label demand snapped + @@ -1189,21 +1197,25 @@

Associate both the supply and demand schools with the network and plot0 0 POINT (221052.520 268129.805) + 0 1 1 POINT (221525.970 267187.138) + 0 2 2 POINT (220504.172 268087.247) + 0 3 3 POINT (221292.004 267684.336) + 0 @@ -1334,6 +1346,7 @@

Create decision variables for the supply locations and amount to be supplied id geometry + comp_label dv s_i @@ -1343,6 +1356,7 @@

Create decision variables for the supply locations and amount to be supplied + @@ -1350,6 +1364,7 @@

Create decision variables for the supply locations and amount to be supplied 0 0 POINT (221614.608 268182.322) + 0 s_0 20 @@ -1357,6 +1372,7 @@

Create decision variables for the supply locations and amount to be supplied 1 1 POINT (221542.156 268184.287) + 0 s_1 30 @@ -1364,6 +1380,7 @@

Create decision variables for the supply locations and amount to be supplied 2 2 POINT (221847.332 267982.491) + 0 s_2 15 @@ -1371,6 +1388,7 @@

Create decision variables for the supply locations and amount to be supplied 3 3 POINT (221406.289 267990.060) + 0 s_3 35 @@ -1417,6 +1435,7 @@

Create decision variables for the demand locations and amount to be received id geometry + comp_label dv d_j @@ -1426,6 +1445,7 @@

Create decision variables for the demand locations and amount to be received + @@ -1433,6 +1453,7 @@

Create decision variables for the demand locations and amount to be received 0 0 POINT (221121.722 268130.726) + 0 d_0 5 @@ -1440,6 +1461,7 @@

Create decision variables for the demand locations and amount to be received 1 1 POINT (221474.120 267187.725) + 0 d_1 45 @@ -1447,6 +1469,7 @@

Create decision variables for the demand locations and amount to be received 2 2 POINT (220452.594 268086.776) + 0 d_2 10 @@ -1454,6 +1477,7 @@

Create decision variables for the demand locations and amount to be received 3 3 POINT (221235.286 267684.289) + 0 d_3 40 diff --git a/docs/notebooks/tsp.html b/docs/notebooks/tsp.html index 324c9fc8..5f128488 100644 --- a/docs/notebooks/tsp.html +++ b/docs/notebooks/tsp.html @@ -3,7 +3,7 @@ - The Traveling Sales(man)(person) Problem — TSP — spaghetti v1.4.1 Manual + The Traveling Sales(man)(person) Problem — TSP — spaghetti v1.4.2 Manual @@ -42,7 +42,7 @@ spaghetti - 1.4.1 + 1.4.2
-2020-02-18T20:36:58-05:00
+2020-02-23T16:43:04-05:00
 
 CPython 3.7.3
 IPython 7.10.2
@@ -431,11 +431,11 @@ 

Integrating pys
 watermark 2.0.2
-pulp                1.6.8
-numpy               1.17.3
 geopandas           0.6.2
 matplotlib_scalebar 0.6.1
-spaghetti           1.4.1
+pulp                1.6.8
+spaghetti           1.4.2
+numpy               1.17.3
 matplotlib          3.1.2
 
 
@@ -1030,6 +1030,7 @@

Instantiate a network object id geometry + comp_label dv @@ -1397,84 +1419,98 @@

Create decision variables for the crime scene locations0 0 POINT (221651.779 266962.433) + 0 x_0 1 1 POINT (220774.565 266967.614) + 0 x_1 2 2 POINT (220962.017 267280.644) + 0 x_2 3 3 POINT (220772.431 267386.410) + 0 x_3 4 4 POINT (220796.815 267545.820) + 0 x_4 5 5 POINT (221500.903 267697.915) + 0 x_5 6 6 POINT (220474.032 267730.529) + 0 x_6 7 7 POINT (221677.382 267761.314) + 0 x_7 8 8 POINT (221154.041 267919.810) + 0 x_8 9 9 POINT (221852.947 268049.045) + 0 x_9 10 10 POINT (220775.174 268149.629) + 0 x_10 11 11 POINT (220472.813 268197.482) + 0 x_11 12 12 POINT (220514.875 268478.203) + 0 x_12 13 13 POINT (222083.681 268590.979) + 0 x_13 diff --git a/docs/objects.inv b/docs/objects.inv index 45f7780854f59a9ddd6f18f4a8e7f1b9b0d01944..331453a4defe83b507697a507fef383f37c4b0fb 100644 GIT binary patch delta 8312 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 CtULVx delta 7685 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 diff --git a/docs/references.html b/docs/references.html index f565d8f7..be25f7f6 100644 --- a/docs/references.html +++ b/docs/references.html @@ -3,7 +3,7 @@ - References — spaghetti v1.4.1 Manual + References — spaghetti v1.4.2 Manual @@ -41,7 +41,7 @@ spaghetti - 1.4.1 + 1.4.2

" ], "text/plain": [ - " id geometry\n", - "demand snapped \n", - "0 0 POINT (221052.520 268129.805)\n", - "1 1 POINT (221525.970 267187.138)\n", - "2 2 POINT (220504.172 268087.247)\n", - "3 3 POINT (221292.004 267684.336)" + " id geometry comp_label\n", + "demand snapped \n", + "0 0 POINT (221052.520 268129.805) 0\n", + "1 1 POINT (221525.970 267187.138) 0\n", + "2 2 POINT (220504.172 268087.247) 0\n", + "3 3 POINT (221292.004 267684.336) 0" ] }, "execution_count": 19, @@ -1080,8 +1092,8 @@ "execution_count": 20, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:54:10.650413Z", - "start_time": "2020-02-19T01:54:09.738641Z" + "end_time": "2020-02-23T21:43:39.653402Z", + "start_time": "2020-02-23T21:43:38.773306Z" } }, "outputs": [ @@ -1135,8 +1147,8 @@ "execution_count": 21, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:54:11.465671Z", - "start_time": "2020-02-19T01:54:10.662992Z" + "end_time": "2020-02-23T21:43:40.414798Z", + "start_time": "2020-02-23T21:43:39.655611Z" } }, "outputs": [ @@ -1163,8 +1175,8 @@ "execution_count": 22, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:54:11.478829Z", - "start_time": "2020-02-19T01:54:11.468441Z" + "end_time": "2020-02-23T21:43:40.429448Z", + "start_time": "2020-02-23T21:43:40.418767Z" } }, "outputs": [ @@ -1204,8 +1216,8 @@ "execution_count": 23, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:54:11.499740Z", - "start_time": "2020-02-19T01:54:11.482246Z" + "end_time": "2020-02-23T21:43:40.463359Z", + "start_time": "2020-02-23T21:43:40.439359Z" } }, "outputs": [ @@ -1232,6 +1244,7 @@ " \n", " id\n", " geometry\n", + " comp_label\n", " dv\n", " s_i\n", " \n", @@ -1241,6 +1254,7 @@ " \n", " \n", " \n", + " \n", " \n", " \n", " \n", @@ -1248,6 +1262,7 @@ " 0\n", " 0\n", " POINT (221614.608 268182.322)\n", + " 0\n", " s_0\n", " 20\n", " \n", @@ -1255,6 +1270,7 @@ " 1\n", " 1\n", " POINT (221542.156 268184.287)\n", + " 0\n", " s_1\n", " 30\n", " \n", @@ -1262,6 +1278,7 @@ " 2\n", " 2\n", " POINT (221847.332 267982.491)\n", + " 0\n", " s_2\n", " 15\n", " \n", @@ -1269,6 +1286,7 @@ " 3\n", " 3\n", " POINT (221406.289 267990.060)\n", + " 0\n", " s_3\n", " 35\n", " \n", @@ -1277,12 +1295,12 @@ "
" ], "text/plain": [ - " id geometry dv s_i\n", - "supply \n", - "0 0 POINT (221614.608 268182.322) s_0 20\n", - "1 1 POINT (221542.156 268184.287) s_1 30\n", - "2 2 POINT (221847.332 267982.491) s_2 15\n", - "3 3 POINT (221406.289 267990.060) s_3 35" + " id geometry comp_label dv s_i\n", + "supply \n", + "0 0 POINT (221614.608 268182.322) 0 s_0 20\n", + "1 1 POINT (221542.156 268184.287) 0 s_1 30\n", + "2 2 POINT (221847.332 267982.491) 0 s_2 15\n", + "3 3 POINT (221406.289 267990.060) 0 s_3 35" ] }, "execution_count": 23, @@ -1308,8 +1326,8 @@ "execution_count": 24, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:54:11.523598Z", - "start_time": "2020-02-19T01:54:11.503909Z" + "end_time": "2020-02-23T21:43:40.495833Z", + "start_time": "2020-02-23T21:43:40.468511Z" } }, "outputs": [ @@ -1336,6 +1354,7 @@ " \n", " id\n", " geometry\n", + " comp_label\n", " dv\n", " d_j\n", " \n", @@ -1345,6 +1364,7 @@ " \n", " \n", " \n", + " \n", " \n", " \n", " \n", @@ -1352,6 +1372,7 @@ " 0\n", " 0\n", " POINT (221121.722 268130.726)\n", + " 0\n", " d_0\n", " 5\n", " \n", @@ -1359,6 +1380,7 @@ " 1\n", " 1\n", " POINT (221474.120 267187.725)\n", + " 0\n", " d_1\n", " 45\n", " \n", @@ -1366,6 +1388,7 @@ " 2\n", " 2\n", " POINT (220452.594 268086.776)\n", + " 0\n", " d_2\n", " 10\n", " \n", @@ -1373,6 +1396,7 @@ " 3\n", " 3\n", " POINT (221235.286 267684.289)\n", + " 0\n", " d_3\n", " 40\n", " \n", @@ -1381,12 +1405,12 @@ "" ], "text/plain": [ - " id geometry dv d_j\n", - "demand \n", - "0 0 POINT (221121.722 268130.726) d_0 5\n", - "1 1 POINT (221474.120 267187.725) d_1 45\n", - "2 2 POINT (220452.594 268086.776) d_2 10\n", - "3 3 POINT (221235.286 267684.289) d_3 40" + " id geometry comp_label dv d_j\n", + "demand \n", + "0 0 POINT (221121.722 268130.726) 0 d_0 5\n", + "1 1 POINT (221474.120 267187.725) 0 d_1 45\n", + "2 2 POINT (220452.594 268086.776) 0 d_2 10\n", + "3 3 POINT (221235.286 267684.289) 0 d_3 40" ] }, "execution_count": 24, @@ -1413,8 +1437,8 @@ "execution_count": 25, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:54:11.630152Z", - "start_time": "2020-02-19T01:54:11.526526Z" + "end_time": "2020-02-23T21:43:40.638031Z", + "start_time": "2020-02-23T21:43:40.500664Z" } }, "outputs": [ @@ -1451,8 +1475,8 @@ "execution_count": 26, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:54:11.643323Z", - "start_time": "2020-02-19T01:54:11.634312Z" + "end_time": "2020-02-23T21:43:40.653132Z", + "start_time": "2020-02-23T21:43:40.642842Z" } }, "outputs": [ @@ -1497,8 +1521,8 @@ "execution_count": 27, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:54:11.681757Z", - "start_time": "2020-02-19T01:54:11.652814Z" + "end_time": "2020-02-23T21:43:40.692469Z", + "start_time": "2020-02-23T21:43:40.658890Z" } }, "outputs": [ @@ -1601,8 +1625,8 @@ "execution_count": 28, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:54:11.722762Z", - "start_time": "2020-02-19T01:54:11.685828Z" + "end_time": "2020-02-23T21:43:40.757527Z", + "start_time": "2020-02-23T21:43:40.708471Z" } }, "outputs": [ @@ -1719,8 +1743,8 @@ "execution_count": 29, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:54:13.555190Z", - "start_time": "2020-02-19T01:54:11.727423Z" + "end_time": "2020-02-23T21:43:42.488802Z", + "start_time": "2020-02-23T21:43:40.760915Z" } }, "outputs": [ diff --git a/docsrc/notebooks/tsp.ipynb b/docsrc/notebooks/tsp.ipynb index cd9bef2a..0ba1f60c 100644 --- a/docsrc/notebooks/tsp.ipynb +++ b/docsrc/notebooks/tsp.ipynb @@ -27,8 +27,8 @@ "execution_count": 1, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:36:58.852841Z", - "start_time": "2020-02-19T01:36:58.615130Z" + "end_time": "2020-02-23T21:43:04.294106Z", + "start_time": "2020-02-23T21:43:04.010686Z" } }, "outputs": [ @@ -36,7 +36,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "2020-02-18T20:36:58-05:00\n", + "2020-02-23T16:43:04-05:00\n", "\n", "CPython 3.7.3\n", "IPython 7.10.2\n", @@ -61,8 +61,8 @@ "execution_count": 2, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:00.623591Z", - "start_time": "2020-02-19T01:36:58.857392Z" + "end_time": "2020-02-23T21:43:06.133438Z", + "start_time": "2020-02-23T21:43:04.297933Z" } }, "outputs": [ @@ -71,11 +71,11 @@ "output_type": "stream", "text": [ "watermark 2.0.2\n", - "pulp 1.6.8\n", - "numpy 1.17.3\n", "geopandas 0.6.2\n", "matplotlib_scalebar 0.6.1\n", - "spaghetti 1.4.1\n", + "pulp 1.6.8\n", + "spaghetti 1.4.2\n", + "numpy 1.17.3\n", "matplotlib 3.1.2\n", "\n" ] @@ -101,8 +101,8 @@ "execution_count": 3, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:00.646859Z", - "start_time": "2020-02-19T01:37:00.637306Z" + "end_time": "2020-02-23T21:43:06.151908Z", + "start_time": "2020-02-23T21:43:06.141226Z" } }, "outputs": [], @@ -174,8 +174,8 @@ "execution_count": 4, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:00.702423Z", - "start_time": "2020-02-19T01:37:00.660222Z" + "end_time": "2020-02-23T21:43:06.198480Z", + "start_time": "2020-02-23T21:43:06.156377Z" } }, "outputs": [], @@ -403,8 +403,8 @@ "execution_count": 5, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:01.068323Z", - "start_time": "2020-02-19T01:37:00.708534Z" + "end_time": "2020-02-23T21:43:06.584475Z", + "start_time": "2020-02-23T21:43:06.201824Z" } }, "outputs": [ @@ -502,8 +502,8 @@ "execution_count": 6, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:01.401804Z", - "start_time": "2020-02-19T01:37:01.072626Z" + "end_time": "2020-02-23T21:43:06.917536Z", + "start_time": "2020-02-23T21:43:06.591614Z" } }, "outputs": [ @@ -606,8 +606,8 @@ "execution_count": 7, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:01.429225Z", - "start_time": "2020-02-19T01:37:01.405647Z" + "end_time": "2020-02-23T21:43:06.947662Z", + "start_time": "2020-02-23T21:43:06.922273Z" } }, "outputs": [ @@ -774,8 +774,8 @@ "execution_count": 8, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:01.933038Z", - "start_time": "2020-02-19T01:37:01.438356Z" + "end_time": "2020-02-23T21:43:07.420275Z", + "start_time": "2020-02-23T21:43:06.965249Z" } }, "outputs": [ @@ -802,6 +802,7 @@ " \n", " id\n", " geometry\n", + " comp_label\n", " \n", " \n", " \n", @@ -809,38 +810,43 @@ " 0\n", " 0\n", " POINT (222006.581 267347.973)\n", + " 0\n", " \n", " \n", " 1\n", " 1\n", " POINT (222006.609 267316.693)\n", + " 0\n", " \n", " \n", " 2\n", " 2\n", " POINT (222006.401 267549.141)\n", + " 0\n", " \n", " \n", " 3\n", " 3\n", " POINT (221419.878 267804.150)\n", + " 0\n", " \n", " \n", " 4\n", " 4\n", " POINT (221410.853 267921.253)\n", + " 0\n", " \n", " \n", "\n", "" ], "text/plain": [ - " id geometry\n", - "0 0 POINT (222006.581 267347.973)\n", - "1 1 POINT (222006.609 267316.693)\n", - "2 2 POINT (222006.401 267549.141)\n", - "3 3 POINT (221419.878 267804.150)\n", - "4 4 POINT (221410.853 267921.253)" + " id geometry comp_label\n", + "0 0 POINT (222006.581 267347.973) 0\n", + "1 1 POINT (222006.609 267316.693) 0\n", + "2 2 POINT (222006.401 267549.141) 0\n", + "3 3 POINT (221419.878 267804.150) 0\n", + "4 4 POINT (221410.853 267921.253) 0" ] }, "execution_count": 8, @@ -859,8 +865,8 @@ "execution_count": 9, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:01.961253Z", - "start_time": "2020-02-19T01:37:01.938220Z" + "end_time": "2020-02-23T21:43:07.446995Z", + "start_time": "2020-02-23T21:43:07.424919Z" } }, "outputs": [ @@ -955,8 +961,8 @@ "execution_count": 10, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:02.674387Z", - "start_time": "2020-02-19T01:37:01.967524Z" + "end_time": "2020-02-23T21:43:08.121042Z", + "start_time": "2020-02-23T21:43:07.450457Z" } }, "outputs": [ @@ -999,8 +1005,8 @@ "execution_count": 11, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:02.757062Z", - "start_time": "2020-02-19T01:37:02.681617Z" + "end_time": "2020-02-23T21:43:08.189713Z", + "start_time": "2020-02-23T21:43:08.123897Z" } }, "outputs": [ @@ -1027,6 +1033,7 @@ " \n", " id\n", " geometry\n", + " comp_label\n", " \n", " \n", " \n", @@ -1034,92 +1041,106 @@ " 0\n", " 0\n", " POINT (221652.388 266992.490)\n", + " 0\n", " \n", " \n", " 1\n", " 1\n", " POINT (220775.021 267000.303)\n", + " 0\n", " \n", " \n", " 2\n", " 2\n", " POINT (220961.989 267315.817)\n", + " 0\n", " \n", " \n", " 3\n", " 3\n", " POINT (220807.120 267386.436)\n", + " 0\n", " \n", " \n", " 4\n", " 4\n", " POINT (220796.691 267553.295)\n", + " 0\n", " \n", " \n", " 5\n", " 5\n", " POINT (221500.239 267683.152)\n", + " 0\n", " \n", " \n", " 6\n", " 6\n", " POINT (220508.266 267730.098)\n", + " 0\n", " \n", " \n", " 7\n", " 7\n", " POINT (221677.346 267804.368)\n", + " 0\n", " \n", " \n", " 8\n", " 8\n", " POINT (221154.251 267929.448)\n", + " 0\n", " \n", " \n", " 9\n", " 9\n", " POINT (221852.953 268042.291)\n", + " 0\n", " \n", " \n", " 10\n", " 10\n", " POINT (220806.533 268149.653)\n", + " 0\n", " \n", " \n", " 11\n", " 11\n", " POINT (220503.164 268197.759)\n", + " 0\n", " \n", " \n", " 12\n", " 12\n", " POINT (220499.316 268477.839)\n", + " 0\n", " \n", " \n", " 13\n", " 13\n", " POINT (222088.795 268590.984)\n", + " 0\n", " \n", " \n", "\n", "" ], "text/plain": [ - " id geometry\n", - "0 0 POINT (221652.388 266992.490)\n", - "1 1 POINT (220775.021 267000.303)\n", - "2 2 POINT (220961.989 267315.817)\n", - "3 3 POINT (220807.120 267386.436)\n", - "4 4 POINT (220796.691 267553.295)\n", - "5 5 POINT (221500.239 267683.152)\n", - "6 6 POINT (220508.266 267730.098)\n", - "7 7 POINT (221677.346 267804.368)\n", - "8 8 POINT (221154.251 267929.448)\n", - "9 9 POINT (221852.953 268042.291)\n", - "10 10 POINT (220806.533 268149.653)\n", - "11 11 POINT (220503.164 268197.759)\n", - "12 12 POINT (220499.316 268477.839)\n", - "13 13 POINT (222088.795 268590.984)" + " id geometry comp_label\n", + "0 0 POINT (221652.388 266992.490) 0\n", + "1 1 POINT (220775.021 267000.303) 0\n", + "2 2 POINT (220961.989 267315.817) 0\n", + "3 3 POINT (220807.120 267386.436) 0\n", + "4 4 POINT (220796.691 267553.295) 0\n", + "5 5 POINT (221500.239 267683.152) 0\n", + "6 6 POINT (220508.266 267730.098) 0\n", + "7 7 POINT (221677.346 267804.368) 0\n", + "8 8 POINT (221154.251 267929.448) 0\n", + "9 9 POINT (221852.953 268042.291) 0\n", + "10 10 POINT (220806.533 268149.653) 0\n", + "11 11 POINT (220503.164 268197.759) 0\n", + "12 12 POINT (220499.316 268477.839) 0\n", + "13 13 POINT (222088.795 268590.984) 0" ] }, "execution_count": 11, @@ -1139,8 +1160,8 @@ "execution_count": 12, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:03.410605Z", - "start_time": "2020-02-19T01:37:02.761912Z" + "end_time": "2020-02-23T21:43:08.850729Z", + "start_time": "2020-02-23T21:43:08.197692Z" } }, "outputs": [ @@ -1183,8 +1204,8 @@ "execution_count": 13, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:04.238574Z", - "start_time": "2020-02-19T01:37:03.415352Z" + "end_time": "2020-02-23T21:43:09.999136Z", + "start_time": "2020-02-23T21:43:08.853813Z" } }, "outputs": [ @@ -1211,8 +1232,8 @@ "execution_count": 14, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:04.259480Z", - "start_time": "2020-02-19T01:37:04.242307Z" + "end_time": "2020-02-23T21:43:10.028197Z", + "start_time": "2020-02-23T21:43:10.009007Z" } }, "outputs": [ @@ -1252,8 +1273,8 @@ "execution_count": 15, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:04.295997Z", - "start_time": "2020-02-19T01:37:04.265302Z" + "end_time": "2020-02-23T21:43:10.065728Z", + "start_time": "2020-02-23T21:43:10.033463Z" } }, "outputs": [ @@ -1280,6 +1301,7 @@ " \n", " id\n", " geometry\n", + " comp_label\n", " dv\n", " \n", " \n", @@ -1288,84 +1310,98 @@ " 0\n", " 0\n", " POINT (221651.779 266962.433)\n", + " 0\n", " x_0\n", " \n", " \n", " 1\n", " 1\n", " POINT (220774.565 266967.614)\n", + " 0\n", " x_1\n", " \n", " \n", " 2\n", " 2\n", " POINT (220962.017 267280.644)\n", + " 0\n", " x_2\n", " \n", " \n", " 3\n", " 3\n", " POINT (220772.431 267386.410)\n", + " 0\n", " x_3\n", " \n", " \n", " 4\n", " 4\n", " POINT (220796.815 267545.820)\n", + " 0\n", " x_4\n", " \n", " \n", " 5\n", " 5\n", " POINT (221500.903 267697.915)\n", + " 0\n", " x_5\n", " \n", " \n", " 6\n", " 6\n", " POINT (220474.032 267730.529)\n", + " 0\n", " x_6\n", " \n", " \n", " 7\n", " 7\n", " POINT (221677.382 267761.314)\n", + " 0\n", " x_7\n", " \n", " \n", " 8\n", " 8\n", " POINT (221154.041 267919.810)\n", + " 0\n", " x_8\n", " \n", " \n", " 9\n", " 9\n", " POINT (221852.947 268049.045)\n", + " 0\n", " x_9\n", " \n", " \n", " 10\n", " 10\n", " POINT (220775.174 268149.629)\n", + " 0\n", " x_10\n", " \n", " \n", " 11\n", " 11\n", " POINT (220472.813 268197.482)\n", + " 0\n", " x_11\n", " \n", " \n", " 12\n", " 12\n", " POINT (220514.875 268478.203)\n", + " 0\n", " x_12\n", " \n", " \n", " 13\n", " 13\n", " POINT (222083.681 268590.979)\n", + " 0\n", " x_13\n", " \n", " \n", @@ -1373,21 +1409,21 @@ "" ], "text/plain": [ - " id geometry dv\n", - "0 0 POINT (221651.779 266962.433) x_0\n", - "1 1 POINT (220774.565 266967.614) x_1\n", - "2 2 POINT (220962.017 267280.644) x_2\n", - "3 3 POINT (220772.431 267386.410) x_3\n", - "4 4 POINT (220796.815 267545.820) x_4\n", - "5 5 POINT (221500.903 267697.915) x_5\n", - "6 6 POINT (220474.032 267730.529) x_6\n", - "7 7 POINT (221677.382 267761.314) x_7\n", - "8 8 POINT (221154.041 267919.810) x_8\n", - "9 9 POINT (221852.947 268049.045) x_9\n", - "10 10 POINT (220775.174 268149.629) x_10\n", - "11 11 POINT (220472.813 268197.482) x_11\n", - "12 12 POINT (220514.875 268478.203) x_12\n", - "13 13 POINT (222083.681 268590.979) x_13" + " id geometry comp_label dv\n", + "0 0 POINT (221651.779 266962.433) 0 x_0\n", + "1 1 POINT (220774.565 266967.614) 0 x_1\n", + "2 2 POINT (220962.017 267280.644) 0 x_2\n", + "3 3 POINT (220772.431 267386.410) 0 x_3\n", + "4 4 POINT (220796.815 267545.820) 0 x_4\n", + "5 5 POINT (221500.903 267697.915) 0 x_5\n", + "6 6 POINT (220474.032 267730.529) 0 x_6\n", + "7 7 POINT (221677.382 267761.314) 0 x_7\n", + "8 8 POINT (221154.041 267919.810) 0 x_8\n", + "9 9 POINT (221852.947 268049.045) 0 x_9\n", + "10 10 POINT (220775.174 268149.629) 0 x_10\n", + "11 11 POINT (220472.813 268197.482) 0 x_11\n", + "12 12 POINT (220514.875 268478.203) 0 x_12\n", + "13 13 POINT (222083.681 268590.979) 0 x_13" ] }, "execution_count": 15, @@ -1412,8 +1448,8 @@ "execution_count": 16, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:05.266426Z", - "start_time": "2020-02-19T01:37:04.300271Z" + "end_time": "2020-02-23T21:43:11.011144Z", + "start_time": "2020-02-23T21:43:10.074151Z" } }, "outputs": [ @@ -1455,8 +1491,8 @@ "execution_count": 17, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:05.342502Z", - "start_time": "2020-02-19T01:37:05.283214Z" + "end_time": "2020-02-23T21:43:11.086399Z", + "start_time": "2020-02-23T21:43:11.016051Z" } }, "outputs": [ @@ -1559,8 +1595,8 @@ "execution_count": 18, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:05.420647Z", - "start_time": "2020-02-19T01:37:05.347433Z" + "end_time": "2020-02-23T21:43:11.165751Z", + "start_time": "2020-02-23T21:43:11.092150Z" } }, "outputs": [ @@ -1668,8 +1704,8 @@ "execution_count": 19, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:05.441201Z", - "start_time": "2020-02-19T01:37:05.426232Z" + "end_time": "2020-02-23T21:43:11.190374Z", + "start_time": "2020-02-23T21:43:11.175921Z" } }, "outputs": [], @@ -1701,8 +1737,8 @@ "execution_count": 20, "metadata": { "ExecuteTime": { - "end_time": "2020-02-19T01:37:06.352647Z", - "start_time": "2020-02-19T01:37:05.446349Z" + "end_time": "2020-02-23T21:43:12.151144Z", + "start_time": "2020-02-23T21:43:11.193544Z" } }, "outputs": [ diff --git a/figs/pysal_logo.png b/figs/pysal_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..500eeaee914d4fcef7c73136f5037e0592dbbe8b GIT binary patch literal 178483 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�#hG`zd|LBemYm4UL5_u$_^Q6CbJWG||Nr9`>|4k}J zcUH1^C$iF9_d%B{k~RvH#9>Lh-9(AI;UC3fvX~4ei@|afuvl(PmK&SJV6xqqOpbae z_rDtKi4#YLr~U5+Tk3d@(7*^sh!=;u1?^7U8yOc%1$z519PHV2?d`g25GlWn0p3;X HLuLO2YkKY* literal 0 HcmV?d00001 diff --git a/spaghetti/network.py b/spaghetti/network.py index 5c134bf5..679c7d17 100644 --- a/spaghetti/network.py +++ b/spaghetti/network.py @@ -2832,7 +2832,7 @@ def extract_component(net, component_id, weightings=None): Full network object. component_id : int The ID of the desired network component. - weightings : + weightings : {dict, bool} See the ``weightings`` keyword argument in ``spaghetti.Network``. Returns