-1

I downloaded the City of St. Louis parcel data, and I get points information that looks like (564433.152, 1037664.554). I thought this might just need to be divided by 10,000 or something to get degrees, but it's clearly not a direct mapping. I did a bit of research and thought these might be UTM coordinates or something, but that doesn't pan out either. For reference, St. Louis is about 38.5N by 90.5W. Any ideas? Code:

import shapefile
sf = shapefile.Reader("prcl")
for i in sf.iterShapeRecords():
     parcel = i.record[0]
     points = i.shape.points
     p2 = list(map(lambda x: [y/10000 for y in x], i.shape.points))
     print(parcel,points,p2)
Frank
  • 459
  • 2
  • 9
  • 1
    This is not a question about programming. It is a question about City of St. Louis parcel data. I don't think stackoverflow is the right place for such a question. – zvone Aug 19 '18 at 10:13
  • or it could be an issue with the way I'm using the library. I am using it in the most plain-vanilla way I can think of, so I'm wondering if there might just be a few toggles to flip. – Frank Aug 19 '18 at 10:16

1 Answers1

0

It turns out the answer here is much more interesting and deep than either the proposal that there was something wrong with the data, or my idea that I was using the library incorrectly. I forgot that I had a working KML produced using ogr2ogr from GDAL. I thought, okay- clearly GDAL knows how to convert these coordinates- but how is it doing it. I thought it might be a bit easier to look at a JSON file, so I ran ogr2ogr -f GeoJSON prcl.json prcl.dbf. This produced, as expected, a JSON file- but it had a really interesting entry in the first few lines:

"crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::26796" } }

It turns out this is a special coordinate system that applies just for a small section of the US, and you can read more about it here. Sadly, I don't yet have a good programmatic way of converting systems, but it is interesting to know where those numbers came from.

Frank
  • 459
  • 2
  • 9