Guest User

Untitled

a guest
Mar 26th, 2012
1,020
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.96 KB | None | 0 0
  1. # simple script to convert csv to shapefile.
  2. from osgeo import ogr
  3. import csv
  4.  
  5. driver = ogr.GetDriverByName('ESRI Shapefile')
  6.  
  7. def loadCSV(path=None):
  8. global driver
  9. print("loading csv file %s" % path)
  10. fileReader = csv.reader(open(path), delimiter=',',)
  11. shape = driver.CreateDataSource("%s.shp" % path)
  12. header = fileReader.next()
  13. layer = shape.CreateLayer(path,
  14. geom_type=ogr.wkbPoint)
  15. layer.CreateField(ogr.FieldDefn("name",ogr.OFTString))
  16. layer.CreateField(ogr.FieldDefn("pop",ogr.OFTInteger))
  17. for line in fileReader:
  18. feature = ogr.Feature(layer.GetLayerDefn())
  19. feature.SetField("name",line[0])
  20. feature.SetField("pop",line[3])
  21. point = ogr.Geometry(ogr.wkbPoint)
  22. point.SetPoint_2D(0,float(line[2]),float(line[1]))
  23. feature.SetGeometry(point)
  24. layer.CreateFeature(feature)
  25. feature.Destroy()
  26.  
  27. loadCSV(path="demographics.csv")
Advertisement
Add Comment
Please, Sign In to add comment