ฉันมี
- GeoPandas 0.2.1 py27_0
- ฟิโอน่า 1.7.0 np110py27_1
- Python 2.7.10
ติดตั้งในสภาพแวดล้อม Anaconda 2-4.1.1-Windows-x86 ฉันสามารถสร้างได้GeoDataFrame
โดยการอ่านชุดข้อมูลอินพุตและใช้งานข้อมูล แต่การบันทึกชุดข้อมูลเอาต์พุตไม่รักษาระบบพิกัดไว้
import geopandas as gpd
world = gpd.read_file(gpd.datasets.get_path('naturalearth_lowres'))
world.to_file(driver='ESRI Shapefile',filename=r'C:\GIS\Temp\world_out.shp')
สิ่งworld_out.shp
นี้มีคุณลักษณะและสกีมาของซอร์สไฟล์รูปร่าง แต่ระบบพิกัดไม่ได้ถูกกำหนด ( <Unknown>
) world_out.prj
ไฟล์ 0 KB และไม่ได้มีอะไร
out = gpd.read_file(r'C:\GIS\Temp\world_out.shp')
print out.crs
>>> {}
ฉันทดสอบเพื่อใช้งานโดยใช้ฟิโอน่าบริสุทธิ์และใช้งานได้ดีโดยรักษาcrs
ข้อมูลไว้:
import fiona
datasrc_path = r'C:\Program Files (x86)\ArcGIS\Desktop10.4\TemplateData\TemplateData.gdb'
with fiona.drivers():
with fiona.open(datasrc_path,layer='cities') as source:
meta = source.meta
meta['driver'] = 'ESRI Shapefile'
meta['layer'] = source.name
with fiona.open(r'C:\GIS\CitiesFiona.shp', 'w', **meta) as sink:
for f in source:
sink.write(f)
CitiesFiona.prj
ไฟล์จะมีข้อมูลเกี่ยวกับระบบพิกัด
ดังนั้นดูเหมือนว่า GeoPandas จะไม่สามารถอ่าน / เขียนcrs
เฟรมข้อมูลลงในชุดข้อมูลเอาต์พุตเมื่อเรียกใช้to_file()
เมธอด ฉันได้พยายามโทรto_file()
ในGeoDataFrames
สร้างขึ้นมาจากแหล่งต่าง ๆ และชุดข้อมูลและข้อมูลระบบพิกัดก็ไม่เคยอยู่ในชุดข้อมูลที่เอาท์พุท
มีใครประสบปัญหานี้มาก่อนหรือไม่ ทุกคนสามารถทดสอบได้ไหม
.prj
crs
มันอาจจะเป็นเพราะผมได้อัปเกรดไปfiona
fiona 1.7.0 np110py27_2