Advanced Example: Optimizing Using Geographic Quantities¶
In the previous section we saw how to use the SingleMetricOptimizer
to optimize
for plans that contain the minimum number of cut edges. However, sometimes we may wish to
include other geographic quantities in our optimization equation. Obtaining and working
with this sort of data can be a bit more involved, so here we will show how to use the
requests
package to download data directly from the Census API and how to use that data
for optimization.
Getting the Data¶
First, we will need to install the requests
package:
pip install requests
Then we can import the package in the head of our jupyter notebook and download the data:
import requests
import pandas as pd
shape_url = "https://www2.census.gov/geo/tiger/TIGER2020PL/LAYER/BG/2020/tl_2020_01_bg20.zip"
shape_response = requests.get(shape_url)
with open("tl_2020_01_bg20.zip", "wb") as f:
f.write(shape_response.content)
pop_url = "https://api.census.gov/data/2020/dec/pl?get=group%28P1%29&for=block%20group&in=state%3A02%20county%3A*"
pop_response = requests.get(pop_url)
pop_df = pd.DataFrame(pop_response.json()[1:], columns=pop_response.json()[0])
pop_df.to_pickle("01_bg_P1_2020.pkl")
Note that we have now saved the data for later so that we can use it more easily in the next section.
Preparing the Data¶
We are now ready to work with the optimizer. First, we will need to import the necessary packages:
from gerrychain import Graph, GeographicPartition, MarkovChain
from gerrychain.updaters import Tally
from gerrychain.metrics.compactness import polsby_popper
from gerrychain.proposals import recom
from gerrychain.tree import bipartition_tree
from gerrychain.accept import always_accept
from gerrychain.optimization import SingleMetricOptimizer
from functools import partial
import numpy as np
import pandas as pd
import geopandas as gpd
import random
random.seed(2024)
Now we need to import the data and check the Coordinate Reference System (CRS) for reasons that will be explained momentarily:
gdf = gpd.read_file("tl_2020_01_bg20.zip")
gdf.crs
<Geographic 2D CRS: EPSG:4269>
Name: NAD83
Axis Info [ellipsoidal]:
- Lat[north]: Geodetic latitude (degree)
- Lon[east]: Geodetic longitude (degree)
Area of Use:
- name: North America - onshore and offshore: Canada - Alberta; British Columbia; Manitoba; New Brunswick; Newfoundland and Labrador; Northwest Territories; Nova Scotia; Nunavut; Ontario; Prince Edward Island; Quebec; Saskatchewan; Yukon. Puerto Rico. United States (USA) - Alabama; Alaska; Arizona; Arkansas; California; Colorado; Connecticut; Delaware; Florida; Georgia; Hawaii; Idaho; Illinois; Indiana; Iowa; Kansas; Kentucky; Louisiana; Maine; Maryland; Massachusetts; Michigan; Minnesota; Mississippi; Missouri; Montana; Nebraska; Nevada; New Hampshire; New Jersey; New Mexico; New York; North Carolina; North Dakota; Ohio; Oklahoma; Oregon; Pennsylvania; Rhode Island; South Carolina; South Dakota; Tennessee; Texas; Utah; Vermont; Virginia; Washington; West Virginia; Wisconsin; Wyoming. US Virgin Islands. British Virgin Islands.
- bounds: (167.65, 14.92, -40.73, 86.45)
Datum: North American Datum 1983
- Ellipsoid: GRS 1980
- Prime Meridian: Greenwich
In this example, we will be interested in optimizing the average Polsby-Popper score for the example data, but before we can do that, we need to make sure that the CRS for our data is appropriate for the measurements we wish to take. For this example, this means that we would like avoid coordinate systems like the geographic coordinate system (lat, long) which measures distances in degrees in favor of something like a Mercator or transverse Mercator projection which measures distances in meters and is subject to less distortion.
We can see that the Census uses the CRS EPSG:4269
which is a geographic coordinate system and
not useful for computing things like the Polsby-Popper score, so we need to transform the data
mildly before we can use it. In general, to find a good choice of CRS, it is best to consult
the official EPSG website epsg.io. In this case, we are working with Alabama,
and we know that the Albers Equal Area Conic projection with epsg code 5070 is a good choice. So
we will modify our geodataframe to use this CRS and then make a graph from it:
gdf.to_crs(epsg=5070, inplace=True)
graph = Graph.from_geodataframe(gdf)
# And we should check to make sure that the CRS is set properly
graph.data.crs
<Projected CRS: EPSG:5070>
Name: NAD83 / Conus Albers
Axis Info [cartesian]:
- X[east]: Easting (metre)
- Y[north]: Northing (metre)
Area of Use:
- name: United States (USA) - CONUS onshore - Alabama; Arizona; Arkansas; California; Colorado; Connecticut; Delaware; Florida; Georgia; Idaho; Illinois; Indiana; Iowa; Kansas; Kentucky; Louisiana; Maine; Maryland; Massachusetts; Michigan; Minnesota; Mississippi; Missouri; Montana; Nebraska; Nevada; New Hampshire; New Jersey; New Mexico; New York; North Carolina; North Dakota; Ohio; Oklahoma; Oregon; Pennsylvania; Rhode Island; South Carolina; South Dakota; Tennessee; Texas; Utah; Vermont; Virginia; Washington; West Virginia; Wisconsin; Wyoming.
- bounds: (-124.79, 24.41, -66.91, 49.38)
Coordinate Operation:
- name: Conus Albers
- method: Albers Equal Area
Datum: North American Datum 1983
- Ellipsoid: GRS 1980
- Prime Meridian: Greenwich
Since we used a shapefile that was directly from the US Census, we will need to add in the population data to the graph. Here we have the 2020 P1 table from the US Census with the column “P1_001N” corresponding to the total population of each geograpic unit.
population_data = pd.read_pickle('01_bg_P1_2020.pkl')
population_data.head()
GEO_ID NAME P1_001N P1_001NA P1_002N P1_002NA P1_003N P1_003NA P1_004N P1_004NA P1_005N P1_005NA P1_006N P1_006NA P1_007N P1_007NA P1_008N P1_008NA P1_009N P1_009NA P1_010N P1_010NA P1_011N P1_011NA P1_012N P1_012NA P1_013N P1_013NA P1_014N P1_014NA P1_015N P1_015NA P1_016N P1_016NA P1_017N P1_017NA P1_018N P1_018NA P1_019N P1_019NA P1_020N P1_020NA P1_021N P1_021NA P1_022N P1_022NA P1_023N P1_023NA P1_024N P1_024NA P1_025N P1_025NA P1_026N P1_026NA P1_027N P1_027NA P1_028N P1_028NA P1_029N P1_029NA P1_030N P1_030NA P1_031N P1_031NA P1_032N P1_032NA P1_033N P1_033NA P1_034N P1_034NA P1_035N P1_035NA P1_036N P1_036NA P1_037N P1_037NA P1_038N P1_038NA P1_039N P1_039NA P1_040N P1_040NA P1_041N P1_041NA P1_042N P1_042NA P1_043N P1_043NA P1_044N P1_044NA P1_045N P1_045NA P1_046N P1_046NA P1_047N P1_047NA P1_048N P1_048NA P1_049N P1_049NA P1_050N P1_050NA P1_051N P1_051NA P1_052N P1_052NA P1_053N P1_053NA P1_054N P1_054NA P1_055N P1_055NA P1_056N P1_056NA P1_057N P1_057NA P1_058N P1_058NA P1_059N P1_059NA P1_060N P1_060NA P1_061N P1_061NA P1_062N P1_062NA P1_063N P1_063NA P1_064N P1_064NA P1_065N P1_065NA P1_066N P1_066NA P1_067N P1_067NA P1_068N P1_068NA P1_069N P1_069NA P1_070N P1_070NA P1_071N P1_071NA state county tract block group
0 1500000US010610503006 Block Group 6, Census Tract 503, Geneva County, Alabama 639 None 576 None 396 None 163 None 0 None 4 None 0 None 13 None 63 None 60 None 29 None 17 None 0 None 0 None 10 None 3 None 0 None 0 None 1 None 0 None 0 None 0 None 0 None 0 None 0 None 3 None 3 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 01 061 050300 6
1 1500000US010610504003 Block Group 3, Census Tract 504, Geneva County, Alabama 950 None 884 None 819 None 24 None 5 None 1 None 0 None 35 None 66 None 63 None 11 None 28 None 3 None 0 None 20 None 0 None 0 None 0 None 1 None 0 None 0 None 0 None 0 None 0 None 0 None 3 None 3 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 01 061 050400 3
2 1500000US010610505001 Block Group 1, Census Tract 505, Geneva County, Alabama 1158 None 1084 None 958 None 94 None 4 None 4 None 2 None 22 None 74 None 73 None 20 None 35 None 2 None 1 None 14 None 1 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 1 None 0 None 0 None 1 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 01 061 050500 1
3 1500000US010610505004 Block Group 4, Census Tract 505, Geneva County, Alabama 1022 None 950 None 746 None 170 None 4 None 1 None 0 None 29 None 72 None 67 None 14 None 25 None 4 None 0 None 21 None 0 None 0 None 0 None 3 None 0 None 0 None 0 None 0 None 0 None 0 None 5 None 0 None 0 None 0 None 3 None 0 None 0 None 1 None 0 None 0 None 0 None 0 None 0 None 0 None 1 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 01 061 050500 4
4 1500000US010610506003 Block Group 3, Census Tract 506, Geneva County, Alabama 1386 None 1281 None 1192 None 40 None 10 None 2 None 0 None 37 None 105 None 99 None 23 None 42 None 5 None 1 None 26 None 0 None 0 None 0 None 2 None 0 None 0 None 0 None 0 None 0 None 0 None 5 None 5 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 1 None 0 None 0 None 1 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 01 061 050600 3
We now need to merge the population data with the graph data. Unfortunately, the Census data for the shapefile and for the P1 table do not have consistent formatting for the geoids, so we need to fix that.
# This grabs the UID part of the GEO_ID column and puts it into a new column called GEOID20
population_data["GEOID20"] = population_data["GEO_ID"].apply(lambda x: x.split("US")[1])
full_data = pd.merge(population_data, graph.data, on='GEOID20')
# Check to make sure the number of rows in the full data is the same as the number of rows
# in the graph.data dataframe. This is a sanity check to make sure we didn't lose any data.
assert full_data.shape[0] == graph.data.shape[0]
full_data.set_index("GEOID20", inplace=True)
full_data.head()
GEO_ID NAME P1_001N P1_001NA P1_002N P1_002NA P1_003N P1_003NA P1_004N P1_004NA P1_005N P1_005NA P1_006N P1_006NA P1_007N P1_007NA P1_008N P1_008NA P1_009N P1_009NA P1_010N P1_010NA P1_011N P1_011NA P1_012N P1_012NA P1_013N P1_013NA P1_014N P1_014NA P1_015N P1_015NA P1_016N P1_016NA P1_017N P1_017NA P1_018N P1_018NA P1_019N P1_019NA P1_020N P1_020NA P1_021N P1_021NA P1_022N P1_022NA P1_023N P1_023NA P1_024N P1_024NA P1_025N P1_025NA P1_026N P1_026NA P1_027N P1_027NA P1_028N P1_028NA P1_029N P1_029NA P1_030N P1_030NA P1_031N P1_031NA P1_032N P1_032NA P1_033N P1_033NA P1_034N P1_034NA P1_035N P1_035NA P1_036N P1_036NA P1_037N P1_037NA P1_038N P1_038NA P1_039N P1_039NA P1_040N P1_040NA P1_041N P1_041NA P1_042N P1_042NA P1_043N P1_043NA P1_044N P1_044NA P1_045N P1_045NA P1_046N P1_046NA P1_047N P1_047NA P1_048N P1_048NA P1_049N P1_049NA P1_050N P1_050NA P1_051N P1_051NA P1_052N P1_052NA P1_053N P1_053NA P1_054N P1_054NA P1_055N P1_055NA P1_056N P1_056NA P1_057N P1_057NA P1_058N P1_058NA P1_059N P1_059NA P1_060N P1_060NA P1_061N P1_061NA P1_062N P1_062NA P1_063N P1_063NA P1_064N P1_064NA P1_065N P1_065NA P1_066N P1_066NA P1_067N P1_067NA P1_068N P1_068NA P1_069N P1_069NA P1_070N P1_070NA P1_071N P1_071NA state county tract block group STATEFP20 COUNTYFP20 TRACTCE20 BLKGRPCE20 NAMELSAD20 MTFCC20 FUNCSTAT20 ALAND20 AWATER20 INTPTLAT20 INTPTLON20 geometry
GEOID20
010610503006 1500000US010610503006 Block Group 6, Census Tract 503, Geneva County, Alabama 639 None 576 None 396 None 163 None 0 None 4 None 0 None 13 None 63 None 60 None 29 None 17 None 0 None 0 None 10 None 3 None 0 None 0 None 1 None 0 None 0 None 0 None 0 None 0 None 0 None 3 None 3 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 01 061 050300 6 01 061 050300 6 Block Group 6 G5030 S 822081 0 +31.0405326 -085.8752036 POLYGON ((961077.073 936796.629, 961083.626 936803.369, 961095.821 936814.627, 961102.231 936819.116, 961084.582 936950.221, 961082.266 936979.055, 961116.056 936969.132, 961155.759 936956.71, 961179 936948.792, 961232.612 936931.593, 961246.545 936927.49, 961271.133 936918.598, 961439.601 936860.997, 961465.562 936852.7, 961500.477 936839.432, 961543.872 936824.721, 961594.435 936808.317, 961633.596 936794.721, 961677.216 936777.91, 961703.213 936769.281, 961715.774 936764.585, 961729.648 936761.035, 961785.664 936737.497, 961852.088 936707.915, 961876.868 936698.15, 961944.441 936664.105, 961939.71 936645.702, 961929.858 936614.336, 961926.593 936601.012, 961919.627 936577.561, 961917.321 936561.544, 961917.144 936545.306, 961918.138 936524.384, 961920.066 936509.938, 961923.366 936478.19, 961926.832 936437.734, 961928.985 936400.606, 961935.467 936386.535, 961949.815 936379.458, 961965.89 936376.815, 961998.263 936373.903, 962017.141 936372.79, 962063.248 936371.235, 962103.57 936370.963, 962112.311 936368.879, 962117.658 936361.845, 962119.302 936353.632, 962124.922 936293.945, 962129.063 936264.188, 962137.653 936183.008, 962148.254 936091.083, 962150.336 936067.145, 962151.957 936059.154, 962156.239 936043.282, 962161.906 936027.893, 962164.047 936019.51, 962165.077 935994.677, 962181.001 935895.044, 962191.743 935823.267, 962188.29 935809.028, 962201.408 935800.924, 962223.588 935790.435, 962230.579 935785.926, 962236.127 935779.696, 962239.983 935772.279, 962241.71 935764.187, 962253.696 935673.641, 962253.956 935667.628, 962266.474 935571.211, 962269.645 935551.417, 962271.112 935544.863, 962273.987 935527.834, 962259.945 935532.036, 962220.731 935542.492, 962153.351 935556.759, 962046.296 935575.953, 962028.209 935578.604, 961983.27 935589.792, 961905.079 935611.18, 961789.403 935642.989, 961725.526 935660.317, 961579.971 935698.553, 961568.781 935701.159, 961514.238 935716.244, 961538.003 935721.357, 961581.167 935723.176, 961570.182 935827.699, 961568.266 935839.351, 961563.963 935884.078, 961561.692 935899.941, 961559.99 935922.129, 961554.479 935964.714, 961548.224 936021.425, 961548.035 936028.563, 961542.229 936072.123, 961540.337 936094.291, 961534.863 936142.808, 961531.256 936174.747, 961525.214 936221.414, 961516.191 936295.948, 961511.19 936352.569, 961510.245 936368.575, 961508.128 936383.896, 961506.307 936393.768, 961499.387 936394.929, 961483.313 936396.678, 961443.228 936402.794, 961418.791 936405.774, 961402.551 936406.387, 961383.165 936404.202, 961359.532 936398.768, 961345.149 936394.546, 961333.511 936413.882, 961317.84 936432.452, 961306.012 936443.715, 961280.299 936464.007, 961252.659 936481.745, 961245.929 936486.506, 961238.726 936490.322, 961232.185 936495.104, 961225.207 936499.503, 961218.844 936504.415, 961208.093 936516.353, 961149.846 936594.798, 961114.662 936641.035, 961110.664 936646.2, 961102.031 936659.818, 961098.661 936667.175, 961093.493 936682.394, 961090.36 936698.278, 961083.87 936746.463, 961081.613 936771.165, 961079.484 936779.438, 961077.073 936796.629))
010610504003 1500000US010610504003 Block Group 3, Census Tract 504, Geneva County, Alabama 950 None 884 None 819 None 24 None 5 None 1 None 0 None 35 None 66 None 63 None 11 None 28 None 3 None 0 None 20 None 0 None 0 None 0 None 1 None 0 None 0 None 0 None 0 None 0 None 0 None 3 None 3 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 01 061 050400 3 01 061 050400 3 Block Group 3 G5030 S 89084411 1388652 +31.0355522 -085.6754867 POLYGON ((974553.169 933731.527, 974546.304 933804.61, 974526.239 934035.777, 974523.391 934059.406, 974518.527 934114.027, 974517.988 934127.839, 974517.476 934139.641, 974530.233 934138.562, 974538.823 934138.821, 974553.814 934140.11, 974647.95 934153.33, 974674.462 934156.986, 974746.403 934168.249, 974774.106 934175.055, 974793.349 934181.279, 974808.31 934187.263, 974852.085 934209.234, 974892.955 934235.924, 974946.392 934278.295, 975121.557 934419.436, 975146.328 934440.914, 975278.773 934547.672, 975286.787 934553.239, 975297.581 934576.447, 975300.256 934584.455, 975302.363 934592.402, 975303.906 934605.546, 975298.555 934657.541, 975279.777 934816.587, 975214.85 935402.982, 975209.605 935446.936, 975202.77 935502.909, 975178.131 935731.014, 975157.977 935916.874, 975154.572 935948.274, 975138.025 936110.586, 975120.165 936272.645, 975111.673 936353.61, 975103.843 936434.647, 975097.381 936526.907, 975093.998 936575.761, 975091.427 936611.839, 975079.54 936782.377, 975066.906 936970.398, 975060.211 937067.445, 975059.155 937102.792, 975059.49 937124.419, 975068.757 937161.669, 975076.352 937185.202, 975085.865 937207.824, 975097.698 937229.355, 975133.025 937274.353, 975173.16 937314.728, 975507.763 937643.56, 975659.482 937792.699, 975781.413 937911.984, 976048.773 938175.597, 976356.054 938478.684, 976569.784 938689.395, 976586.479 938706.647, 976679.158 938798.047, 976718.238 938838.316, 976744.95 938869.969, 976755.056 938887.96, 976762.494 938902.305, 976769.519 938916.94, 976779.049 938939.344, 976786.698 938962.326, 976793.388 938985.316, 976801.631 939041.589, 976803.758 939098.652, 976805.126 939212.912, 976808.219 939327.136, 976825.838 939439.806, 976857.985 939549.132, 976903.347 939653.966, 977075.014 940014.404, 977101.474 940065.051, 977134.385 940111.813, 977175.043 940151.586, 977221.411 940184.596, 977271.823 940211.221, 977322.842 940235.787, 977372.4 940263.215, 977419.077 940295.141, 977458.607 940335.576, 977489.54 940382.908, 977510.85 940435.123, 977521.463 940490.649, 977521.798 940547.408, 977519.511 940569.311, 977898.649 940611.782, 978068.873 940629.632, 978115.145 940635.339, 978310.995 940657.772, 978573.987 940686.737, 978743.333 940704.728, 979025.401 940731.643, 979066.59 940736.577, 978708.312 941327.778, 978772.395 941323.681, 979021.296 941305.254, 979063.645 941302.148, 979112.095 941299.258, 979160.589 941297.717, 979209.104 941297.744, 979257.664 941299.119, 979306.091 941301.71, 979311.116 941302.146, 979354.539 941305.871, 979402.735 941311.458, 979450.811 941318.152, 979498.742 941326.172, 979570.442 941339.133, 979713.531 941366.142, 979761.426 941374.496, 979809.268 941379.823, 979862.133 941380.328, 979919.324 941376.27, 979943.747 941373.451, 979967.924 941369.374, 979975.401 941367.504, 979980.667 941365.729, 980010.21 941565.192, 980011.642 941575.753, 980023.391 941661.953, 980028.326 941710.601, 980032.007 941759.336, 980035.12 941808.009, 980037.897 941870.295, 980044.842 942085.645, 980045.479 942125.434, 980045.67 942174.571, 980044.734 942248.089, 980041.894 942321.511, 980039.929 942394.805, 980037.397 942468.037, 980034.456 942538.875, 980033.089 942619.842, 980033.497 942700.332, 980041.541 942968.727, 980042.706 942993.134, 980052.116 943279.693, 980052.46 943295.842, 980052.595 943304.248, 980057.248 943449.313, 980060.069 943522.571, 980062.321 943563.32, 980064.001 943579.503, 980068.518 943611.772, 980072.792 943635.734, 980076.139 943651.54, 980084.369 943683.095, 980091.708 943706.161, 980097.396 943721.55, 980115.514 943766.827, 980169.236 943894.421, 980220.68 944013.935, 980241.4 944058.154, 980263.527 944101.743, 980278.867 944130.381, 980286.003 944143.02, 980302.746 944172.819, 980335.933 944229.028, 980349.719 944249.105, 980364.629 944268.523, 980380.925 944286.637, 980392.401 944298.071, 980410.936 944314.079, 980423.917 944323.999, 980458.051 944346.969, 980474.542 944357.16, 980463.636 944392.222, 980458.33 944407.532, 980436.545 944476.54, 980435.391 944480.106, 980461.083 944471.721, 980512.716 944450.055, 980579.095 944420.376, 980775.453 944327.905, 980791.817 944320.852, 980923.582 944258.369, 980982.887 944232.172, 981013.093 944220.141, 981028.695 944215.691, 981036.713 944214.105, 981052.993 944213.085, 981061.007 944213.289, 981165.845 944223.954, 981185.26 944226.633, 981294.825 944237.816, 981447.536 944254.272, 981520.052 944261.299, 981591.946 944271.391, 981904.881 944305.585, 981953.335 944310.433, 982014.833 944317.602, 982080.81 944443.978, 982192.436 944648.074, 982272.004 944748.077, 982345.403 944788.998, 982509.707 944841.092, 982479.819 944732.981, 982373.206 944361.479, 982372.595 944345.188, 982351.108 944241.577, 982326.927 943995.459, 982331.97 943972.961, 982298.623 943825.536, 982237.399 943555.007, 982196.399 943417.153, 982192.063 943316.763, 982205.668 943238.697, 982236.025 943170.183, 982253.005 943084.878, 982282.016 943005.923, 982402.322 942813.983, 982416.288 942802.643, 982498.59 942678.271, 982515.079 942621.109, 982524.761 942601.692, 982535.322 942551.49, 982635.526 942324.686, 982701.729 942362.47, 982743.953 942385.885, 982851.327 942441.823, 982894.583 942463.673, 982960.717 942495.074, 982982.092 942505.244, 983115.552 942563.257, 983249.486 942620.428, 983360.572 942669.506, 983381.297 942679.495, 983419.051 942697.389, 983505.984 942740.693, 983699.292 942842.86, 983721.328 942853.105, 983751.398 942865.124, 983789.482 942878.244, 983820.898 942886.719, 983852.577 942893.656, 983884.664 942898.624, 984162.823 942930.203, 984180.917 942932.744, 984325.387 942948.68, 984373.562 942954.405, 984469.423 942967.703, 984500.603 942975.707, 984515.829 942980.844, 984538.269 942990.016, 984552.615 942997.07, 984566.687 943004.878, 984587.189 943017.754, 984600.537 943026.937, 984613.327 943036.842, 984631.492 943052.707, 984648.673 943069.695, 984669.818 943094.166, 984820.769 943285.819, 984847.785 943316.082, 984865.593 943332.58, 984877.812 943343.318, 984890.483 943353.434, 984916.95 943372.112, 984930.736 943380.784, 984944.771 943388.924, 984966.341 943399.904, 984988.694 943409.851, 985011.406 943418.271, 985034.535 943425.506, 985050.223 943429.912, 985074.043 943435.208, 985090.007 943437.966, 985137.991 943443.674, 985202.38 943450.733, 985371.466 943467.26, 985782.274 943508.963, 985983.06 943532.224, 986071.566 943543.615, 986167.992 943555.205, 986240.141 943564.802, 986287.707 943571.701, 986303.814 943574.029, 986359.409 943584.495, 986453.928 943605.613, 986705.867 943665.837, 986729.423 943671.781, 986677.406 943482.338, 986657.581 943411.906, 986625.146 943294.213, 986610.466 943247.507, 986599.073 943217.052, 986586.567 943187.146, 986569.577 943150.146, 986554.964 943121.128, 986538.835 943092.839, 986517.463 943058.267, 986499.285 943031.207, 986465.103 942986.054, 986317.037 942803.193, 986266.719 942739.374, 986242.869 942706.434, 986225.08 942679.306, 986208.956 942652.696, 986168.752 942586.52, 986068.884 942418.689, 986026.913 942349.411, 985985.568 942279.642, 985965.506 942244.433, 985950.794 942215.406, 985934.674 942178.28, 985921.999 942143.769, 985910.579 942100.446, 985905.548 942076.509, 985902.613 942060.522, 985897.285 942020.105, 985896.005 942003.852, 985895.195 941963.259, 985895.805 941930.654, 985897.209 941914.36, 985901.852 941872.911, 985943.373 941505.768, 985944.134 941499.698, 986028.225 940757.592, 986061.127 940467.273, 986097.361 940151.811, 986104.352 940090.705, 986155.128 939642.69, 986165.752 939545.844, 986222.255 939053.484, 986241.25 938883.825, 986244.879 938858.602, 986250.938 938800.752, 986253.022 938752.087, 986251.19 938703.329, 986245.123 938654.777, 986235.151 938606.916, 986228.116 938583.767, 986220.941 938560.156, 986202.942 938514.771, 986192.557 938492.486, 986088.129 938299.334, 985951.575 938049.853, 985924.641 938000.357, 985874.197 937907.67, 985827.032 937822.615, 985801.412 937781.207, 985773.503 937741.45, 985743.319 937703.234, 985711.333 937666.61, 985676.916 937632.07, 985640.955 937599.375, 985603.998 937567.913, 985510.566 937489.984, 985474.248 937457.922, 985438.642 937424.595, 985428.341 937414.627, 985403.76 937390.788, 985352.8 937338.55, 985267.741 937250.578, 985252.312 937233.224, 985237.032 937217.117, 985216.187 937194.135, 985192.101 937161.401, 985172.578 937125.474, 985157.2 937087.541, 985145.99 937048.274, 985139.384 937008.057, 985137.985 936967.516, 985138.609 936926.86, 985140.72 936845.532, 985146.59 936560.327, 985147.854 936519.071, 985149.514 936438.365, 985149.909 936356.961, 985148.722 936316.22, 985142.668 936235.117, 985132.576 936113.073, 985128.596 936072.473, 985123.609 936032.322, 985117.771 935992.079, 985110.181 935952.09, 985101.016 935912.489, 985096.927 935896.49, 985092.509 935879.113, 985080.063 935836.244, 985056.753 935756.161, 985033.106 935678.278, 984963.357 935444.203, 984933.681 935339.147, 984924.5 935314.536, 984913.032 935281.955, 984808.888 934956.072, 984771.345 934848.478, 984721.302 934746.564, 984638.38 934597.645, 984554.057 934449.244, 984541.254 934428.825, 984525.71 934401.952, 984510.789 934381.636, 984486.023 934346.259, 984417.344 934255.285, 984227.908 934009.134, 984070.434 933805.192, 984043.418 933773.709, 984033.48 933762.107, 983990.702 933724.984, 983950.438 933695.521, 983918.827 933670.137, 983920.801 933651.223, 983841.541 933641.994, 983827.544 933640.352, 983813.453 933638.699, 983807.111 933638.005, 983800.864 933637.322, 983358.503 933585.82, 983333.242 933582.947, 982637.997 933502.61, 982296.53 933463.078, 981882.048 933415.03, 981724.932 933396.875, 981583.248 933378.617, 981432.803 933361.643, 981086.726 933323.109, 980751.014 933284.376, 980616.318 933268.797, 980612.495 933268.716, 980608.685 933268.524, 980602.957 933268.347, 980581.838 933265.262, 980491.524 933254.634, 980445.389 933249.942, 980371.888 933241.484, 980322.393 933235.978, 980261.552 933229.124, 980221.227 933224.73, 979984.475 933198.152, 979724.899 933168.312, 979716.664 933167.415, 979580.344 933151.787, 979574.002 933151.096, 977464.653 932908.678, 976516.792 932801.376, 976273.853 932773.555, 975717.957 932710.002, 975128.594 932642.408, 974898.667 932615.587, 974891.12 932684.345, 974887.837 932714.638, 974880.294 932763.039, 974870.692 932810.992, 974858.286 932858.306, 974843.94 932904.962, 974826.979 932951, 974808.875 932994.34, 974751.724 933131.103, 974637.609 933401.182, 974619.668 933446.555, 974603.68 933492.474, 974589.785 933539.404, 974577.582 933586.629, 974567.212 933634.612, 974559.196 933682.962, 974553.169 933731.527))
010610505001 1500000US010610505001 Block Group 1, Census Tract 505, Geneva County, Alabama 1158 None 1084 None 958 None 94 None 4 None 4 None 2 None 22 None 74 None 73 None 20 None 35 None 2 None 1 None 14 None 1 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 1 None 0 None 0 None 1 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 01 061 050500 1 01 061 050500 1 Block Group 1 G5030 S 44340236 4310 +31.1382273 -085.5957716 POLYGON ((981354.716 948358.822, 981366.048 948377.629, 981390.326 948417.991, 981411.318 948453.408, 981422.949 948471.24, 981441.396 948459.94, 981484.129 948437.307, 981498.396 948430.138, 981512.898 948423.442, 981527.907 948417.361, 981543.008 948412.186, 981574.139 948403.839, 981589.72 948400.395, 981605.582 948397.877, 981621.336 948396.354, 981637.49 948395.546, 981653.489 948395.28, 981669.604 948395.699, 981701.511 948398.627, 981846.078 948416.334, 981894.069 948422.588, 981920.313 948426.577, 981965.714 948433.779, 982037.163 948447.634, 982062.364 948453.299, 982202.488 948484.514, 982320.705 948511.431, 982344.001 948517.896, 982359.349 948522.708, 982374.731 948528.084, 982404.688 948540.089, 982433.991 948553.701, 982462.262 948568.879, 982489.974 948585.675, 982596.609 948658.999, 982675.687 948714.986, 982715.422 948742.498, 982814.418 948812.191, 982844.426 948831.589, 982882.977 948855.056, 982911.268 948870.909, 982954.347 948893.193, 982998.707 948913.379, 983028.943 948926.313, 983047.627 948933.841, 983066.463 948941.722, 983232.946 949005.493, 983346.147 949049.333, 983421.34 949079.612, 983458.608 949095.556, 983463.612 949097.894, 983568.896 949145.905, 983678.823 949197.784, 983714.986 949215.957, 983750.733 949235.316, 983785.435 949256.351, 983819.141 949278.62, 983851.827 949302.343, 983883.907 949327.232, 983945.828 949379.114, 984210.179 949606.379, 984253.863 949642.277, 984285.99 949666.724, 984319.385 949689.185, 984353.907 949710.091, 984389.343 949729.643, 984564.024 949815.266, 984587.126 949826.08, 984651.578 949857.432, 984694.566 949879.603, 984722.733 949895.673, 984749.986 949913.098, 984763.309 949922.392, 984789.234 949941.462, 984814.553 949961.696, 984826.573 949972.415, 984849.711 949995.096, 984872.091 950018.589, 984893.215 950043.063, 984901.526 950053.599, 984923.35 950081.284, 984941.952 950107.832, 984959.42 950134.255, 984990.467 950187.684, 985126.542 950428.105, 985185.916 950534.441, 985262.124 950668.588, 985287.992 950709.924, 985306.083 950736.752, 985334.568 950776.025, 985354.623 950801.503, 985380.674 950832.451, 985576.272 951049.538, 985609.278 951085.055, 985626.32 951102.258, 985643.895 951118.959, 985656.396 951129.62, 985680.775 951150.538, 985699.69 951165.484, 985719.113 951180.151, 985738.692 951194.275, 985758.935 951207.576, 985779.71 951220.377, 985821.501 951244.662, 985885.337 951279.762, 985949.234 951314.308, 985992.888 951335.554, 986037.22 951354.971, 986059.767 951363.826, 986105.515 951379.93, 986128.61 951387.279, 986245.203 951420.79, 986689.307 951545.13, 986720.522 951554.268, 986735.72 951559.52, 986750.501 951565.957, 986764.995 951573.257, 986779.228 951581.201, 986792.903 951589.866, 986812.431 951604.435, 986838.482 951625.764, 986930.468 951703.919, 986955.92 951723.727, 986969.168 951732.794, 986982.974 951741.139, 986997.161 951748.63, 987011.704 951755.488, 987026.615 951761.604, 987041.824 951766.746, 987057.451 951770.702, 987073.056 951773.985, 987088.923 951776.625, 987169.29 951784.791, 987185.34 951785.772, 987198.68 951787.911, 987200.513 951828.625, 987202.151 951845.032, 987204.58 951861.191, 987210.929 951893.001, 987217.398 951916.766, 987224.802 951939.851, 987236.626 951969.689, 987243.407 951984.536, 987254.702 952006.146, 987266.919 952027.187, 987280.273 952047.457, 987402.058 952224.021, 987459.503 952307.561, 987512.292 952383.874, 987593.839 952501.178, 987598.399 952508.395, 987662.657 952602.087, 987684.29 952636.587, 987694.132 952654.009, 987708.201 952679.06, 987719.185 952700.861, 987732.731 952730.666, 987741.906 952753.275, 987755.955 952791.529, 987767.048 952823.638, 987790.544 952891.583, 987816.667 952968.658, 987934.327 953308.403, 987947.186 953345.296, 987958.932 953375.799, 987969.016 953397.949, 987976.836 953412.016, 987989.463 953432.768, 987998.986 953446.127, 988013.898 953465.227, 988024.429 953477.243, 988041.285 953494.319, 988059.478 953510.535, 988078.786 953525.307, 988101.35 953540.886, 988132.175 953562.186, 988567.149 953857.76, 988695.605 953944.657, 988728.041 953966.92, 988734.923 953971.26, 988795.095 954012.472, 988833.98 954041.267, 988859.36 954061.634, 988883.687 954082.893, 988913.079 954111.09, 988941.204 954140.378, 988962.589 954164.895, 988988.356 954196.497, 989007.646 954222.686, 989026.012 954249.444, 989031.115 954256.05, 989039.937 954269.669, 989049.457 954286.499, 989100.528 954370.36, 989126.567 954411.618, 989138.978 954432.572, 989202.731 954536.634, 989217.764 954560.675, 989241.676 954598.678, 989305.426 954702.741, 989395.318 954847.964, 989420.55 954889.583, 989446.693 954930.742, 989664.186 955282.994, 989672.89 955299.399, 989676.045 955312.394, 989676.201 955328.304, 989673.973 955344.176, 989661.021 955407.886, 989641.959 955503.605, 989623.627 955599.628, 989618.514 955623.463, 989595.611 955743.606, 989587.248 955791.706, 989579.617 955840.111, 989566.643 955936.949, 989537.088 956179.812, 989527.69 956253.765, 989525.477 956272.1, 989483.741 956608.085, 989477.078 956656.374, 989472.956 956693.75, 991069.348 956981.539, 991323.811 957023.194, 991339.655 956861.642, 991337.698 956810.162, 991322.06 956767.469, 991332.4 956650.528, 991329.038 956611.765, 991302.248 956554.968, 991303.839 956539.698, 991287.911 956476.266, 991190.188 956275.194, 991172.057 956242.076, 991063.557 956038.138, 990954.295 955805.577, 990884.897 955603.164, 990752.305 955373.18, 990731.412 955286.259, 990717.09 955184.842, 990764.075 954828.516, 990793.757 954790.829, 990825.65 954709.737, 990836.783 954700.669, 990884.89 954472.734, 990883.199 954280.265, 990844.024 954150.251, 990851.3 954084.349, 990845.705 954060.564, 990832.202 954002.776, 990753.4 953840.297, 990609.433 953483.497, 990605.198 953429.196, 990584.002 953344.931, 990516.184 953242.203, 990495.518 953244.959, 990456.075 953216.879, 990431.795 953199.539, 990214.858 952996.981, 990190.779 952962.204, 990128.927 952873.793, 990126.071 952852.885, 990069.631 952695.458, 990067.336 952669.464, 989979.511 952426.43, 989957.876 952384.201, 989826.517 952127.528, 989817.055 952052.06, 989795.764 951967.678, 989706.8 951734.822, 989698.415 951623.549, 989693.399 951556.295, 989682.466 951516.703, 989660.65 951460.467, 989604.435 951327.695, 989429.717 950789.158, 989403.584 950719.131, 989399.097 950690.434, 989419.5 950690.109, 989498.391 950644.973, 989546.209 950604.135, 989622.495 950466.385, 989695.726 950425.775, 989715.904 950404.946, 989730.111 950368.014, 989755.577 950345.193, 989811.557 950323.162, 990120.233 950249.536, 990190.462 950213.635, 990286.615 950149.929, 990323.424 950120.527, 990529.616 949955.706, 990442.124 949819.482, 990409.053 949768.16, 990231.27 949492.387, 990126.529 949328.638, 990118.506 949314.66, 990230.333 949327.438, 990254.549 949328.99, 990278.705 949331.094, 990302.989 949333.772, 990343.137 949337.417, 990455.796 949352.192, 990471.679 949354.728, 990590.5 949377.795, 990629.496 949386.685, 990645.382 949388.326, 990653.719 949386.448, 990659.471 949380.256, 990664.287 949364.336, 990664.77 949347.827, 990664.176 949331.534, 990660.968 949299.062, 990659.068 949274.679, 990645.869 949161.983, 990643.215 949129.684, 990640.547 949081.044, 990637.232 948983.652, 990635.316 948946.398, 990633.461 948918.999, 990631.166 948902.519, 990619.78 948846.203, 990587.815 948698.985, 990568.028 948607.834, 990558.631 948560.355, 990540.385 948463.891, 990536.249 948439.822, 990533.475 948425.08, 990522.789 948367.611, 990507.438 948270.907, 990497.653 948198.318, 990492.206 948149.708, 990490.639 948117.082, 990489.255 948051.575, 990489.212 948019.005, 990489.95 947986.297, 990493.181 947904.96, 990494.812 947880.632, 990495.156 947869.703, 990495.809 947848.177, 990497.168 947823.707, 990500.915 947774.993, 990503.356 947738.109, 990505.819 947701.899, 990510.441 947653.057, 990513.205 947604.57, 990513.126 947596.616, 990511.498 947588.827, 990508.602 947582.129, 990508.144 947581.071, 990502.611 947574.866, 990484.124 947558.614, 990471.466 947548.49, 990445.259 947529.373, 990394.401 947489.186, 990355.914 947459.986, 990337.115 947444.82, 990240.028 947371.895, 990200.497 947343.477, 990140.743 947301.527, 990062.427 947243.991, 990042.643 947229.948, 990001.947 947203.417, 989988.336 947194.979, 989975.424 947186.282, 989961.847 947174.937, 989950.003 947175.646, 989917.976 947178.943, 989877.895 947184.149, 989813.628 947190.943, 989776.108 947193.746, 989684.683 947200.458, 989653.809 947201.98, 989644.377 947202.507, 989587.774 947203.992, 989539.312 947206.262, 989442.128 947207.082, 989393.559 947205.984, 989344.874 947204.202, 989320.627 947202.874, 989247.887 947195.422, 989080.146 947168.108, 988984.449 947151.08, 988936.269 947142.977, 988863.677 947129.837, 988832.542 947124.171, 988824.627 947123.076, 988792.785 947116.885, 988770.949 947111.907, 988749.686 947105.202, 988726.066 947099.916, 988422.721 947046.163, 988342.884 947032.789, 988302.791 947026.811, 988262.601 947021.717, 988176.061 947012.756, 988142.012 947009.233, 988061.164 947005.039, 988024.582 947002.806, 988034.265 946910.431, 988035.44 946893.663, 988037.486 946874.193, 988039.841 946858.003, 988041.899 946838.422, 987986.738 946832.019, 987946.575 946825.811, 987930.062 946822.876, 987914.741 946820.407, 987847.165 946812.08, 987834.314 946809.771, 987746.264 946798.857, 987726.026 946796.744, 987706.003 946793.535, 987639.363 946784.528, 987545.63 946773.103, 987515.955 946768.946, 987391.967 946753.413, 987373.073 946752.119, 987270.434 946739.047, 987254.097 946736.244, 987189.732 946729.169, 987150.178 946724.375, 987135.062 946724.392, 987109.656 946723.167, 987028.858 946717.645, 986974.746 946712.146, 986885.537 946701.337, 986887.726 946680.54, 986897.598 946615.939, 986906.963 946535.056, 986912.303 946496.03, 986913.812 946481.425, 986891.658 946479.326, 986796.291 946467.954, 986790.3 946467.631, 986779.488 946466.779, 986676.563 946457.152, 986613.349 946451.775, 986451.412 946438.577, 986339.871 946429.014, 986295.502 946425.373, 986255.484 946421.315, 986239.071 946420.072, 986231.439 946419.011, 986218.926 946417.972, 986207.065 946416.223, 986190.808 946414.438, 986175.026 946411.81, 986095.089 946401.915, 985974.042 946389.187, 985893.448 946381.796, 985853.037 946378.703, 985772.212 946373.414, 985691.392 946366.335, 985676.29 946365.349, 985637.891 946361.359, 985570.699 946353.875, 985428.484 946337.041, 985409.839 946335.22, 985256.958 946316.212, 985209.38 946310.434, 985129.319 946298.184, 985089.475 946290.793, 985055.101 946284.114, 985010.06 946275.259, 984955.832 946263.829, 984653.269 946200.11, 984573.841 946184.69, 984533.64 946177.934, 984493.72 946172.104, 984454.838 946167.283, 984413.386 946164.083, 984373.103 946161.571, 984332.853 946159.622, 984252.395 946157.967, 984131.29 946157.119, 984050.382 946156.088, 984009.907 946154.452, 983969.565 946151.599, 983929.296 946148.083, 983888.438 946143.832, 983809.936 946135.682, 983792.306 946134.198, 983647.723 946118.029, 983607.502 946114.072, 983409.687 946093.086, 982993.447 946049.765, 982923.936 946042.494, 982883.741 946037.425, 982843.738 946031.481, 982810.754 946026.082, 982803.89 946024.995, 982764.165 946016.509, 982724.595 946007.48, 982685.371 945997.035, 982646.646 945985.526, 982609.658 945973.871, 982188.024 945829.405, 982140.298 945964.95, 982084.051 946458.411, 982092.741 946495.28, 982089.139 946528.231, 982007.575 946598.871, 981945.929 946697.314, 981924.24 946756.597, 981806.887 946874.687, 981767.537 946931.929, 981728.924 947099.693, 981705.86 947156.701, 981638.879 947318.009, 981622.46 947398.234, 981638.652 947484.598, 981667.269 947549.158, 981687.929 947687.371, 981673.505 947772.963, 981640.343 947876.872, 981589.036 947984.058, 981580.92 947988.318, 981572.588 948018.179, 981524.739 948107.727, 981516.407 948137.589, 981444.673 948234.822, 981435.25 948251.92, 981405.75 948279.468, 981395.666 948296.494, 981395.145 948306.508, 981395.129 948318.031, 981391.208 948332.038, 981388.739 948341.503, 981385.384 948345.948, 981378.954 948347.036, 981366.188 948349.222, 981354.716 948358.822))
010610505004 1500000US010610505004 Block Group 4, Census Tract 505, Geneva County, Alabama 1022 None 950 None 746 None 170 None 4 None 1 None 0 None 29 None 72 None 67 None 14 None 25 None 4 None 0 None 21 None 0 None 0 None 0 None 3 None 0 None 0 None 0 None 0 None 0 None 0 None 5 None 0 None 0 None 0 None 3 None 0 None 0 None 1 None 0 None 0 None 0 None 0 None 0 None 0 None 1 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 01 061 050500 4 01 061 050500 4 Block Group 4 G5030 S 56456276 433175 +31.0475534 -085.5973576 POLYGON ((983918.827 933670.137, 983950.438 933695.521, 983990.702 933724.984, 984033.48 933762.107, 984043.418 933773.709, 984070.434 933805.192, 984227.908 934009.134, 984417.344 934255.285, 984486.023 934346.259, 984510.789 934381.636, 984525.71 934401.952, 984541.254 934428.825, 984554.057 934449.244, 984638.38 934597.645, 984721.302 934746.564, 984771.345 934848.478, 984808.888 934956.072, 984913.032 935281.955, 984924.5 935314.536, 984933.681 935339.147, 984963.357 935444.203, 985033.106 935678.278, 985056.753 935756.161, 985080.063 935836.244, 985092.509 935879.113, 985096.927 935896.49, 985101.016 935912.489, 985110.181 935952.09, 985117.771 935992.079, 985123.609 936032.322, 985128.596 936072.473, 985132.576 936113.073, 985142.668 936235.117, 985148.722 936316.22, 985149.909 936356.961, 985149.514 936438.365, 985147.854 936519.071, 985146.59 936560.327, 985140.72 936845.532, 985138.609 936926.86, 985137.985 936967.516, 985139.384 937008.057, 985145.99 937048.274, 985157.2 937087.541, 985172.578 937125.474, 985192.101 937161.401, 985216.187 937194.135, 985237.032 937217.117, 985252.312 937233.224, 985267.741 937250.578, 985352.8 937338.55, 985403.76 937390.788, 985428.341 937414.627, 985438.642 937424.595, 985474.248 937457.922, 985510.566 937489.984, 985603.998 937567.913, 985640.955 937599.375, 985676.916 937632.07, 985711.333 937666.61, 985743.319 937703.234, 985773.503 937741.45, 985801.412 937781.207, 985827.032 937822.615, 985874.197 937907.67, 985924.641 938000.357, 985951.575 938049.853, 986088.129 938299.334, 986192.557 938492.486, 986202.942 938514.771, 986220.941 938560.156, 986228.116 938583.767, 986235.151 938606.916, 986245.123 938654.777, 986251.19 938703.329, 986253.022 938752.087, 986250.938 938800.752, 986244.879 938858.602, 986241.25 938883.825, 986222.255 939053.484, 986165.752 939545.844, 986155.128 939642.69, 986104.352 940090.705, 986097.361 940151.811, 986061.127 940467.273, 986028.225 940757.592, 985944.134 941499.698, 985943.373 941505.768, 985901.852 941872.911, 985897.209 941914.36, 985895.805 941930.654, 985895.195 941963.259, 985896.005 942003.852, 985897.285 942020.105, 985902.613 942060.522, 985905.548 942076.509, 985910.579 942100.446, 985921.999 942143.769, 985934.674 942178.28, 985950.794 942215.406, 985965.506 942244.433, 985985.568 942279.642, 986026.913 942349.411, 986068.884 942418.689, 986168.752 942586.52, 986208.956 942652.696, 986225.08 942679.306, 986242.869 942706.434, 986266.719 942739.374, 986317.037 942803.193, 986465.103 942986.054, 986499.285 943031.207, 986517.463 943058.267, 986538.835 943092.839, 986554.964 943121.128, 986569.577 943150.146, 986586.567 943187.146, 986599.073 943217.052, 986610.466 943247.507, 986625.146 943294.213, 986657.581 943411.906, 986677.406 943482.338, 986729.423 943671.781, 986745.61 943675.125, 986929.294 943703.355, 987048.967 943721.089, 987144.375 943736.717, 987168.104 943740.219, 987221.025 943750.621, 987319.069 943770.122, 987332.88 943773.318, 987420.255 943790.641, 987467.333 943801.969, 987498.341 943810.636, 987513.552 943815.888, 987535.868 943825.278, 987579.501 943846.187, 987623.06 943867.759, 987674.702 943890.668, 987689.14 943897.738, 987716.755 943913.753, 987729.692 943920.547, 987962.986 944027.545, 988033.666 944060.046, 988186.135 944133.658, 988229.883 944154.359, 988244.927 944160.266, 988260.244 944165.419, 988275.765 944169.588, 988291.536 944173.225, 988323.38 944178.63, 988371.368 944185.14, 988508.06 944202.08, 988539.933 944205.475, 988564.057 944207.122, 988612.164 944213.423, 988708.099 944228.567, 988803.86 944242.686, 988899.642 944257.48, 988979.9 944268.999, 989005.351 944273.367, 988873.528 944483.438, 988849.279 944522.06, 988797.465 944605.093, 988779.812 944632.468, 988770.698 944647.467, 988744.432 944688.776, 988571.928 944964.312, 988549.869 944998.7, 988536.178 945022.259, 988375.199 945278.366, 988332.396 945347.399, 988178.067 945592.716, 988080.686 945748.289, 987956.323 945946.551, 987751.932 946273.205, 987720.624 946323.028, 987702.499 946352.143, 987694.863 946364.172, 987687.379 946376.554, 987684.064 946382.344, 987678.183 946392.328, 987674.755 946400.008, 987672.724 946407.17, 987671.525 946420.69, 987671.763 946431.571, 987672.187 946439.898, 987674.58 946449.449, 987677.789 946462.895, 987678.534 946474.391, 987673.657 946503.956, 987669.384 946544.554, 987665.258 946575.992, 987659.162 946625.342, 987653.389 946665.664, 987644.514 946746.377, 987642.078 946762.446, 987639.363 946784.528, 987706.003 946793.535, 987726.026 946796.744, 987746.264 946798.857, 987834.314 946809.771, 987847.165 946812.08, 987914.741 946820.407, 987930.062 946822.876, 987946.575 946825.811, 987986.738 946832.019, 988041.899 946838.422, 988039.841 946858.003, 988037.486 946874.193, 988035.44 946893.663, 988034.265 946910.431, 988024.582 947002.806, 988061.164 947005.039, 988142.012 947009.233, 988176.061 947012.756, 988262.601 947021.717, 988302.791 947026.811, 988342.884 947032.789, 988422.721 947046.163, 988726.066 947099.916, 988749.686 947105.202, 988770.949 947111.907, 988792.785 947116.885, 988824.627 947123.076, 988832.542 947124.171, 988863.677 947129.837, 988936.269 947142.977, 988984.449 947151.08, 989080.146 947168.108, 989247.887 947195.422, 989320.627 947202.874, 989344.874 947204.202, 989393.559 947205.984, 989442.128 947207.082, 989539.312 947206.262, 989587.774 947203.992, 989644.377 947202.507, 989653.809 947201.98, 989684.683 947200.458, 989776.108 947193.746, 989813.628 947190.943, 989877.895 947184.149, 989917.976 947178.943, 989950.003 947175.646, 989961.847 947174.937, 989990.112 947172.793, 990006.362 947172.906, 990026.578 947174.351, 990030.466 947174.667, 990062.846 947175.103, 990127.159 947168.764, 990151.244 947165.488, 990167.137 947162.764, 990190.911 947157.104, 990206.551 947152.337, 990252.614 947136.265, 990267.796 947130.442, 990439.495 947056.827, 990461.723 947046.968, 990483.754 947036.305, 990526.933 947013.426, 990568.232 946987.654, 990583.906 946979.982, 990584.784 946965.084, 990588.652 946929.141, 990601.01 946832.698, 990616.557 946695.202, 990625.372 946597.921, 990630.372 946549.122, 990636.188 946499.854, 990646.04 946427.866, 990653.756 946379.591, 990660.573 946331.664, 990680.482 946172.829, 990683.436 946159.054, 990685.82 946142.644, 990687.625 946126.281, 990692.249 946093.891, 990695.203 946062.771, 990706.753 945964.115, 990723.062 945817.976, 990734.914 945720.92, 990741.319 945672.389, 990766.142 945472.47, 990773.19 945422.443, 990779.689 945366.984, 990782.512 945350.063, 990786.198 945308.841, 990797.665 945203.127, 990808.856 945105.999, 990823.578 944960.359, 990826.126 944912.97, 990831.006 944864.383, 990838.792 944816.34, 990845.173 944768.031, 990847.95 944743.719, 990888.482 944428.263, 990894.131 944379.65, 990912.833 944235.234, 990919.625 944187.53, 990923.125 944162.739, 990926.879 944146.927, 990934.157 944123.447, 990940.308 944108.46, 990948.194 944094.223, 990957.791 944080.958, 990968.507 944068.824, 990980.462 944057.61, 990992.993 944047.242, 991019.175 944027.638, 991059.239 944000.165, 991098.282 943970.678, 991135.864 943939.687, 991147.206 943927.958, 991157.7 943915.24, 991166.755 943901.692, 991174.476 943887.213, 991180.557 943871.994, 991195.564 943825.309, 991205.033 943794.126, 991220.092 943739.166, 991224.035 943723.375, 991227.328 943707.401, 991234.113 943658.914, 991238.317 943618.198, 991245.778 943537.558, 991247.299 943521.165, 991248.156 943505.594, 991249.686 943489.985, 991250.546 943480.456, 991211.213 943472.648, 991201.239 943471.1, 991192.306 943469.667, 991196.641 943421.693, 991188.951 943342.18, 991191.714 943272.883, 991198.669 943226.317, 991210.77 943199.901, 991258.73 943125.184, 991354.665 943020.736, 991434.574 942921.905, 991441.378 942899.269, 991479.726 942828.417, 991489.34 942796.803, 991515.351 942755.361, 991551.873 942679.384, 991564.064 942623.549, 991566.828 942516.097, 991580.166 942477.621, 991610.33 942442.792, 991631.962 942395.944, 991630.607 942352.714, 991595.232 942291.631, 991597.915 942239.559, 991619.877 942189.727, 991631.193 942147.895, 991637.253 942104.252, 991643.242 941955.419, 991651.956 941920.686, 991640.945 941854.794, 991642.722 941832.611, 991652.791 941708.398, 991707.226 941536.043, 991731.408 941427.934, 991734.091 941403.613, 991726.801 941275.36, 991705.647 941151.284, 991703.486 941115.351, 991674.217 941009.29, 991674.986 940963.275, 991662.847 940918.856, 991592.847 940521.63, 991580.653 940383.104, 991554.122 940252.171, 991538.301 940201.193, 991512.605 940145.993, 991422.956 940016.156, 991347.093 939944.458, 991218.056 939773.244, 991156.022 939714.151, 991148.283 939700.99, 991144.186 939666.075, 991136.115 939645.493, 991102.223 939592.524, 991102.893 939586.444, 991058.903 939513.9, 991013.049 939446.969, 990960.437 939370.119, 990890.06 939204.261, 990861.507 939119.322, 990776.057 938923.385, 990701.519 938839.533, 990633.391 938736.585, 990619.254 938725.852, 990547.312 938691.408, 990488.955 938624.894, 990457.649 938589.221, 990301.709 938383.736, 990224.01 938229.389, 990211.186 938195.417, 990177.622 938139.358, 990093.072 938029.796, 990010.346 937937.555, 989958.258 937899.261, 989909.673 937852.626, 989860.143 937774.559, 989807.128 937717.703, 989785.119 937684.511, 989789.773 937586.564, 989770.188 937514.816, 989771.319 937504.535, 989787.242 937481.673, 989791.949 937466.751, 989789.418 937412.321, 989803.32 937369.545, 989794.885 937334.827, 989756.463 937267.159, 989742.617 937210.252, 989748.013 937194.287, 989767.841 937163.799, 989800.027 937138.476, 989825.714 937138.283, 989840.827 937128.87, 989859.912 937105.126, 989872.014 937078.711, 989864.131 937056.361, 989812.111 936962.582, 989809.061 936934.611, 989815.986 936883.012, 989806.186 936849.375, 989795.507 936835.892, 989748.835 936815.315, 989716.744 936773.631, 989680.287 936798.596, 989659.527 936793.178, 989642.491 936780.898, 989613.026 936743.196, 989594.46 936673.463, 989556.737 936588.085, 989552.649 936570.405, 989554.438 936526.296, 989568.001 936513.58, 989583.943 936507.95, 989589.633 936500.632, 989588.845 936491.259, 989574.894 936440.496, 989539.833 936397.926, 989529.728 936378.354, 989525.813 936358.232, 989527.077 936291.913, 989487.225 936209.322, 989479.55 936168.536, 989498.117 936116.428, 989509.809 936104.177, 989525.156 936103.964, 989550.415 936112.897, 989560.631 936103.616, 989570.701 936067.803, 989596.707 936036.876, 989608.991 935980.945, 989623.219 935951.743, 989655.75 935923.325, 989710.139 935901.676, 989725.188 935886.773, 989716.722 935853.172, 989718.377 935810.28, 989713.293 935789.47, 989689.284 935757.851, 989648.725 935720.83, 989644.141 935706.788, 989647.686 935680.662, 989664.731 935619.773, 989707.861 935561.195, 989728.463 935501.928, 989751.9 935306.367, 989755.746 935215.719, 989753.703 935178.574, 989745.03 935146.853, 989721.188 935102.386, 989726.225 935067.922, 989734.206 935054.592, 989743.577 935039.065, 989758.641 935027.521, 989767.75 935020.468, 989775.144 935005.506, 989773.389 934998.824, 989770.15 934985.602, 989777.84 934978.393, 989785.441 934961.552, 989793.096 934930.285, 989796.814 934913.912, 989794.836 934906.646, 989784.617 934896.795, 989784.409 934887.374, 989788.806 934877.006, 989791.845 934865.929, 989817.146 934842.31, 989838.031 934835.322, 989872.079 934842.761, 989897.84 934831.5, 989904.139 934818.656, 989899.011 934776.472, 989896.894 934756.548, 989888.311 934745.758, 989890.987 934721.44, 989898.31 934710.61, 989904.373 934705.124, 989906.515 934685.669, 989892.793 934644.106, 989895.068 934623.435, 989899.435 934611.609, 989903.133 934605.863, 989904.203 934596.135, 989888.408 934567.322, 989889.746 934555.163, 989897.55 934533.87, 989896.85 934518.465, 989883.815 934492.417, 989885.494 934477.163, 989893.458 934465.733, 989898.243 934417.033, 989865.148 934351.298, 989865.866 934344.776, 989597.382 934313.22, 988429.712 934176.102, 988297.314 934160.547, 988076.631 934135.071, 988056.376 934132.846, 988021.64 934129.031, 987986.904 934125.215, 986968.468 934006.473, 986699.238 933975.593, 986436.113 933944.944, 986064.521 933900.621, 985937.632 933885.481, 985572.85 933842.82, 985322.57 933813.835, 984802.154 933753.488, 984096.629 933671.688, 983920.801 933651.223, 983918.827 933670.137))
010610506003 1500000US010610506003 Block Group 3, Census Tract 506, Geneva County, Alabama 1386 None 1281 None 1192 None 40 None 10 None 2 None 0 None 37 None 105 None 99 None 23 None 42 None 5 None 1 None 26 None 0 None 0 None 0 None 2 None 0 None 0 None 0 None 0 None 0 None 0 None 5 None 5 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 1 None 0 None 0 None 1 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 0 None 01 061 050600 3 01 061 050600 3 Block Group 3 G5030 S 46703608 61693 +31.1174653 -085.5183702 POLYGON ((989975.424 947186.282, 989988.336 947194.979, 990001.947 947203.417, 990042.643 947229.948, 990062.427 947243.991, 990140.743 947301.527, 990200.497 947343.477, 990240.028 947371.895, 990337.115 947444.82, 990355.914 947459.986, 990394.401 947489.186, 990445.259 947529.373, 990471.466 947548.49, 990484.124 947558.614, 990502.611 947574.866, 990508.144 947581.071, 990508.602 947582.129, 990511.498 947588.827, 990513.126 947596.616, 990513.205 947604.57, 990510.441 947653.057, 990505.819 947701.899, 990503.356 947738.109, 990500.915 947774.993, 990497.168 947823.707, 990495.809 947848.177, 990495.156 947869.703, 990494.812 947880.632, 990493.181 947904.96, 990489.95 947986.297, 990489.212 948019.005, 990489.255 948051.575, 990490.639 948117.082, 990492.206 948149.708, 990497.653 948198.318, 990507.438 948270.907, 990522.789 948367.611, 990533.475 948425.08, 990536.249 948439.822, 990540.385 948463.891, 990558.631 948560.355, 990568.028 948607.834, 990587.815 948698.985, 990619.78 948846.203, 990631.166 948902.519, 990633.461 948918.999, 990635.316 948946.398, 990637.232 948983.652, 990640.547 949081.044, 990643.215 949129.684, 990645.869 949161.983, 990659.068 949274.679, 990660.968 949299.062, 990664.176 949331.534, 990664.77 949347.827, 990664.287 949364.336, 990659.471 949380.256, 990653.719 949386.448, 990645.382 949388.326, 990629.496 949386.685, 990590.5 949377.795, 990471.679 949354.728, 990455.796 949352.192, 990343.137 949337.417, 990302.989 949333.772, 990278.705 949331.094, 990254.549 949328.99, 990230.333 949327.438, 990118.506 949314.66, 990126.529 949328.638, 990231.27 949492.387, 990409.053 949768.16, 990442.124 949819.482, 990529.616 949955.706, 990626.152 950106.135, 990653.445 950146.526, 990663.1 950159.565, 990683.357 950184.855, 990693.983 950196.883, 990705.485 950208.783, 990711.833 950214.52, 990717.379 950219.72, 990729.655 950229.804, 990742.689 950239.076, 990756.257 950247.848, 990769.98 950256.077, 990791.527 950267.072, 990806.332 950273.294, 990821.4 950278.874, 990844.626 950285.913, 990875.977 950293.85, 990915.789 950301.377, 991074.701 950329.325, 991226.576 950356.051, 991444.264 950393.851, 991551.224 950412.49, 991602.064 950421.462, 991665.184 950432.686, 991703.084 950439.334, 991818.165 950459.768, 991829.618 950461.705, 991938.701 950481.03, 992078.835 950505.802, 992135.767 950515.898, 992306.152 950545.583, 992351.088 950553.46, 992630.296 950601.335, 992782.073 950627.182, 993045.572 950670.088, 993141.325 950686.276, 993194.851 950696.897, 993227.228 950701.598, 993250.758 950705.88, 993328.235 950718.704, 993545.576 950754.392, 994040.696 950835.274, 994064.335 950838.563, 994073.035 950840.31, 994187.668 950858.711, 994208.43 950863.808, 994239.737 950872.983, 994270.056 950884.174, 994285.035 950890.534, 994314.137 950904.949, 994328.271 950912.893, 994348.717 950926.014, 994368.438 950940.509, 994381.263 950950.771, 994393.366 950961.513, 994416.989 950983.939, 994425.131 950992.452, 994428.296 950995.824, 994438.975 951008.199, 994449.239 951020.863, 994459.171 951033.939, 994477.01 951061.097, 994519.11 951131.681, 994533.348 951155.082, 994548.643 951180.168, 994564.255 951205.848, 994576.693 951227.372, 994582.065 951234.122, 994591.192 951247.557, 994620.478 951295.681, 994627.206 951309.185, 994749.792 951516.39, 994761.875 951549.738, 994760.258 951564.332, 994734.264 951628.045, 994770.864 951639.487, 995040.112 951861.496, 995206.014 951996.956, 995299.933 952074.411, 995636.452 952348.334, 995645.388 952355.704, 995722.551 952421.233, 995734.425 952432.287, 995745.966 952443.752, 995756.702 952455.576, 995767.188 952467.932, 995777.141 952480.788, 995786.489 952493.913, 995795.506 952507.448, 995803.931 952521.142, 995811.835 952535.226, 995822.863 952556.484, 995834.372 952578.579, 995854.842 952619.016, 995867.391 952643.8, 995964.066 952837.635, 995998.016 952905.647, 996030.564 952969.922, 996064.131 953036.213, 996097.541 953103.046, 996163.841 953236.209, 996180.075 953269.126, 996278.838 953465.55, 996340.417 953585.208, 996345.841 953595.771, 996361.3 953624.462, 996385.678 953666.678, 996419.792 953721.952, 996446.928 953762.572, 996475.144 953802.081, 996504.471 953841.042, 996555.405 953904.116, 996589.852 953944.318, 996618.68 953978.299, 996670.264 954038.089, 996825.187 954217.591, 996836.068 954230.664, 997007.835 954427.152, 997039.32 954024.124, 997041.128 954015.594, 997047.325 953966.698, 997051.502 953934.255, 997051.81 953931.491, 997052.031 953929.501, 997060.808 953859.961, 997096.205 953561.128, 997099.135 953544.217, 997261.15 952264.878, 997261.383 952262.777, 997271.209 952174.328, 997309.531 951829.381, 997354.436 951425.176, 997363.746 951341.373, 997427.403 950816.588, 997450.795 950624.107, 997556.216 949722.544, 997566.867 949631.841, 997562.048 949631.306, 997597.786 949259.674, 997598.109 949255.905, 997597.694 949253.62, 997597.652 949252.273, 997598.748 949250.156, 997656.14 948708.579, 997656.312 948707.031, 997692.603 948364.006, 997693.475 948356.157, 997700.368 948290.668, 997701.403 948280.487, 997777.528 947560.816, 997778.465 947551.519, 997780.028 947536.584, 997780.176 947535.257, 997787.334 947465.658, 997793.469 947406.129, 997794.799 947393.294, 997795.339 947388.43, 997795.769 947384.561, 997796.915 947373.385, 997799.588 947347.605, 997846.764 946891.086, 997887.224 946511.38, 998001.034 945441.271, 998057.799 944907.048, 998059.755 944888.576, 998060.645 944884.87, 998063.242 944874.415, 998065.745 944863.95, 998072.637 944835.507, 998070.265 944825.843, 998060.819 944823.003, 998040.64 944816.844, 997870.93 944761.958, 997832.547 944749.078, 997756.394 944721.26, 997718.849 944706.011, 997681.591 944689.9, 997644.785 944673.167, 997424.572 944569.708, 997387.075 944554.019, 997348.823 944540.82, 997317.635 944532.098, 997305.434 944529.065, 997270.21 944521.35, 997230.37 944514.69, 997190.142 944510.673, 997149.845 944508.998, 997109.364 944508.981, 997033.967 944509.679, 997028.505 944509.744, 996988.372 944508.312, 996953.664 944504.572, 996947.802 944503.922, 996908.048 944496.489, 996869.086 944486.235, 996831.096 944472.396, 996793.705 944456.609, 996719.706 944424.003, 996683.041 944406.843, 996646.888 944388.508, 996611.808 944368.278, 996578.036 944345.732, 996558.409 944331.133, 996540.795 944315.638, 996529.729 944306.689, 996523.955 944301.797, 996464.877 944247.684, 996256.796 944054.51, 996226.148 944027.947, 996194.916 944002.327, 996161.952 943978.529, 996128.104 943956.648, 996059.14 943913.976, 996023.941 943893.064, 996003.445 943879.378, 995884.819 943809.828, 995859.165 943796.913, 995848.556 943791.597, 995810.803 943776.446, 995772.427 943763.464, 995733.284 943753.084, 995693.493 943745.093, 995613.895 943730.118, 995574.196 943723.034, 995458.302 943701.353, 995415.674 943693.049, 995376.959 943684.844, 995364.964 943683.403, 995349.449 943680.901, 995351.796 943744.387, 995354.429 943785.412, 995356.438 943826.032, 995357.575 943856.373, 995359.73 943917.264, 995362.366 943988.504, 995362.512 943996.689, 995363.178 944029.551, 995363.115 944070.725, 995361.847 944111.542, 995359.658 944152.033, 995356.688 944192.662, 995355.411 944205.054, 995349.19 944267.256, 995342.997 944322.299, 995325.772 944476.052, 995312.883 944590.671, 995295.89 944736.281, 995257.785 945035.328, 995230.237 945245.124, 995225.539 945277.169, 995209.087 945365.209, 995188.402 945469.006, 995177.862 945520.099, 995144.24 945683.678, 995137.218 945714.235, 995098.366 945713.4, 995057.865 945711.04, 995017.584 945706.69, 994977.536 945700.24, 994769.501 945656.274, 994739.583 945649.939, 994700.219 945640.768, 994660.821 945631.034, 994621.878 945619.784, 994583.414 945606.797, 994545.427 945592.967, 994469.598 945563.981, 994431.622 945550.042, 994393.143 945538.061, 994353.802 945528.67, 994313.823 945522.454, 994273.431 945519.103, 994233.136 945518.336, 994192.538 945519.438, 994152.279 945521.809, 994111.751 945523.144, 994071.045 945521.773, 994030.723 945518.654, 993990.609 945513.656, 993950.761 945507.12, 993861.841 945491.799, 993632.187 945452.071, 993598.907 945446.711, 993584.389 945443.874, 993107.081 945361.889, 992944.359 945333.831, 992795.47 945307.864, 992723.014 945295.94, 992707.115 945292.616, 992675.712 945287.58, 992020.987 945173.63, 991986.916 945167.629, 991879.823 945148.755, 991720.568 945121.326, 991481.31 945079.251, 991361.478 945058.753, 991321.53 945053.114, 991281.176 945052.018, 991241.157 945056.555, 991202.136 945066.797, 991165.152 945082.859, 991130.458 945103.315, 991097.704 945127.005, 990968.107 945225.395, 990806.032 945347.621, 990779.689 945366.984, 990773.19 945422.443, 990766.142 945472.47, 990741.319 945672.389, 990734.914 945720.92, 990723.062 945817.976, 990706.753 945964.115, 990695.203 946062.771, 990692.249 946093.891, 990687.625 946126.281, 990685.82 946142.644, 990683.436 946159.054, 990680.482 946172.829, 990660.573 946331.664, 990653.756 946379.591, 990646.04 946427.866, 990636.188 946499.854, 990630.372 946549.122, 990625.372 946597.921, 990616.557 946695.202, 990601.01 946832.698, 990588.652 946929.141, 990584.784 946965.084, 990583.906 946979.982, 990568.232 946987.654, 990526.933 947013.426, 990483.754 947036.305, 990461.723 947046.968, 990439.495 947056.827, 990267.796 947130.442, 990252.614 947136.265, 990206.551 947152.337, 990190.911 947157.104, 990167.137 947162.764, 990151.244 947165.488, 990127.159 947168.764, 990062.846 947175.103, 990030.466 947174.667, 990026.578 947174.351, 990006.362 947172.906, 989990.112 947172.793, 989961.847 947174.937, 989975.424 947186.282))
And now we can add the population data to the graph:
for node, data in graph.nodes(data=True):
# Note that the pops are np.int64 types, so we convert them to ints here
data["TOTPOP"] = int(full_data.loc[data["GEOID20"]]["P1_001N"])
# Just a quick check of the data that is stored on the graph nodes
graph.nodes(data=True)[0]
{'boundary_node': False,
'area': 1100226.0333901227,
'STATEFP': '01',
'COUNTYFP': '033',
'TRACTCE': '020200',
'BLKGRPCE': '1',
'GEOID': '010330202001',
'NAMELSAD': 'Block Group 1',
'MTFCC': 'G5030',
'FUNCSTAT': 'S',
'ALAND': 994584,
'AWATER': 105643,
'INTPTLAT': '+34.7664259',
'INTPTLON': '-087.6960323',
'geometry': <POLYGON ((752587.971 1333045.744, 752581.759 1333117.737, 752581.362 133313...>,
'TOTPOP': 1171}
Using SingleMetricOptimizer
¶
There is a polsby_popper
updater in GerryChain, but you need to make sure that the
CRS for your data is correct before you use it. If is is not, then you can run into some issues with
distortion of the geometry. However, we already checked that our CRS is appropriate in this
tutorial, so we don’t need to worry. We can now follow the usual workflow laid out in the
optimization tutorial
with the only tweak being that we need to use a GeographicPartition
object instead
of a regular Partition
object for the SingleMetricOptimizer
since we want to use the
polsby_popper
updater which relies on the area
and perimeter
updaters.
updaters = {
"population": Tally("TOTPOP", alias="population"),
"polsby-popper": polsby_popper,
}
# We need to use the GeographicPartition class to make sure that area and perimeter
# updaters are also calculated. These are used in the calculation of the polsby-popper
# score.
initial_partition = GeographicPartition.from_random_assignment(
graph=graph,
n_parts=4,
epsilon=0.01,
pop_col="TOTPOP",
updaters=updaters
)
ideal_population = sum(initial_partition["population"].values())/len(initial_partition)
opt_metric = lambda x: sum(x["polsby-popper"].values())/len(x)
optimizer = SingleMetricOptimizer(
initial_state=initial_partition,
proposal=proposal,
constraints=[],
optimization_metric=opt_metric,
maximize=True,
)
tilt_best = -1
for i, part in enumerate(optimizer.tilted_run(1000, 0.1, with_progress_bar=True)):
tilt_best = max(tilt_best, opt_metric(part))
print(tilt_best)
100%|██████████| 1000/1000 [03:48<00:00, 4.38it/s]
0.30465552990184624