python創(chuàng)建ArcGIS shape文件的實現(xiàn)
更新時間:2019年12月06日 15:34:00 作者:擾擾1994
今天小編就為大家分享一篇python創(chuàng)建ArcGIS shape文件的實現(xiàn),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
工作中遇到了一個需求,需要把一段json文本轉(zhuǎn)化成ArcGIS shape文件,想來想去,還是考慮用python來實現(xiàn)。
直接上代碼
import shapefile import json import os #shapefile="polygon.shp"; #jsonfile="社區(qū)網(wǎng)格.json"; def run(): data=readJSON() datalist=data["list"] file=shapefile.Writer(target="社區(qū)網(wǎng)格.shp",shapeType=shapefile.POLYGON,autoBalance=True); #設(shè)置屬性信息 file.field('nere', 'C', '40') #'SECOND_FLD'為字段名稱,C代表數(shù)據(jù)類型為字符串,長度為40 file.field('fileName', 'C', '40') file.field('url', 'C', '40') file.field('photo', 'C', '40') file.field('netGrnereNum', 'C', '40') file.field('color', 'C', '40') file.field('num', 'C', '40') file.field('lat', 'C', '40') file.field('lon', 'C', '40') file.field('togriga', 'C', '40') file.field('gudumji', 'C', '40') file.field('memo', 'C', '40') #寫入數(shù)據(jù) for item in datalist: nere=item["nere"] fileName = item["fileName"] url = item["url"] photo = item["photo"] netGrnereNum = item["netGrnereNum"] color = item["color"] num = item["num"] lat = item["lat"] lon = item["lon"] togriga = item["togriga"] gudumji = item["gudumji"] memo = item["memo"] polysStr = item["hotinfo"] polys=parsing(polysStr); #寫入 file.poly(polys=polys) file.record(nere,fileName,url,photo,netGrnereNum,color,num,lat,lon,togriga,gudumji,memo) print("-------寫入成功---------") #保存文件 file.save("社區(qū)網(wǎng)格.shp") #讀取json文件 def readJSON(): f = open("社區(qū)網(wǎng)格.json", "r",encoding="utf-8") # 設(shè)置文件對象 _str = f.read() # 將txt文件的所有內(nèi)容讀入到字符串str中 f.close() # 關(guān)閉文件 print("讀取json完成") if _str.startswith(u'\ufeff'): _str = _str.encode('utf8')[3:].decode('utf8') data = json.loads(_str,encoding='utf8') return data; #print(data) #數(shù)據(jù)解析 def parsing(text): data=[] strs=text.split(","); for line in strs: xy=line.split(" "); x_y=[float(xy[0]),float(xy[1])] data.append(x_y) _data=[]; _data.append(data) return _data; if __name__=="__main__": print("執(zhí)行程序?。?!"); run(); print("程序結(jié)束?。。?);
以上這篇python創(chuàng)建ArcGIS shape文件的實現(xiàn)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
pytorch sampler對數(shù)據(jù)進行采樣的實現(xiàn)
今天小編就為大家分享一篇pytorch sampler對數(shù)據(jù)進行采樣的實現(xiàn),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12使用Python編寫簡單網(wǎng)絡(luò)爬蟲抓取視頻下載資源
從上一篇文章的評論中看出似乎很多童鞋都比較關(guān)注爬蟲的源代碼。所有本文就使用Python編寫簡單網(wǎng)絡(luò)爬蟲抓取視頻下載資源做了很詳細的記錄,幾乎每一步都介紹給大家,希望對大家能有所幫助2014-11-11vue.js實現(xiàn)輸入框輸入值內(nèi)容實時響應(yīng)變化示例
這篇文章主要介紹了vue.js實現(xiàn)輸入框輸入值內(nèi)容實時響應(yīng)變化,結(jié)合實例形式分析了vue.js使用v-model屬性進行數(shù)據(jù)綁定的相關(guān)操作技巧,需要的朋友可以參考下2018-07-07python如何繪制極坐標(biāo)輪廓圖contourf
這篇文章主要介紹了python如何繪制極坐標(biāo)輪廓圖contourf問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-08-08Pytorch技法之繼承Subset類完成自定義數(shù)據(jù)拆分
這篇文章主要介紹了Pytorch技法之繼承Subset類完成自定義數(shù)據(jù)拆分,下文我們介紹一些下面是加載內(nèi)置訓(xùn)練數(shù)據(jù)集的常見操作,需要的小伙伴可以參考一下2022-02-02