Novato aquí luchando con SIG. Estoy tratando de mapear los barrios de la ciudad de Milwuakee usando archivos de formas que se encuentran en el sitio web de su condado . Estoy siguiendo el hilo aquí con cierto éxito. Mi código es da:
from pyproj import Proj, transform
# wisconsing EPSG:32054
# epsg:4326 is for the entire world, wgs 84...not obvious
inProj = Proj(init='epsg:32054')
outProj = Proj(init='epsg:4326')
x1,y1 = 2560131.496875003, 406816.434375003
x2,y2 = transform(inProj,outProj,x1,y1)
print(x2,y2)
con salida,
-65.70220967836329 43.08590211722421
El problema es que esto está mal. El lon / lat para Milwaukee es -87.863984 y 42.920816.
En segundo lugar, ¿cómo puedo hacer esto mediante programación para todo el archivo de forma? Me gustaría trazar esto en el mapa base. Cuando trato de seguir este hilo me sale un código de error:
with fiona.open("ward2012/ward.shp") as shp:
ori = Proj(init='epsg:32054' ),
dest= Proj(init='EPSG:4326',preserve_units=True)
with fiona.open('ward2012/MKE_wards_lat_lon.shp', 'w', 'ESRI Shapefile', shp.schema.copy(), crs=from_epsg(4326))as output:
for point in shp:
x,y = point['geometry']['coordinates']
point['geometry']['coordinates'] = transform(ori, dest,x,y)
output.write(point)
error:
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-139-a5079ab39f99> in <module>()
4 with fiona.open('ward2012/MKE_wards_lat_lon.shp', 'w', 'ESRI Shapefile', shp.schema.copy(), crs=from_epsg(4326))as output:
5 for point in shp:
----> 6 x,y = point['geometry']['coordinates']
7 point['geometry']['coordinates'] = transform(ori, dest,x,y)
8 output.write(point)
ValueError: not enough values to unpack (expected 2, got 1)