การสร้าง CSV ด้วยรูปทรงเรขาคณิตเป็น WKT ใน QGIS (ด้วยการเลือกตัวคั่นฟิลด์)


13

มีวิธีเลือกตัวคั่นฟิลด์เมื่อส่งออก CSV ที่มีรูปทรงเรขาคณิตเป็น wkt ใน QGIS หรือไม่

ฉันมีไฟล์รูปร่างที่มีรูโดนัทและฉันต้องการส่งออกเป็น CSV สำหรับคู่ค้าที่ฐานข้อมูลไม่รองรับข้อมูลเชิงพื้นที่

ฉันทำตามวิธีการของ Greg Krakowเพื่อเพิ่มเขตข้อมูล WKT ไปยังไฟล์ที่ส่งออกของฉัน (เมื่อส่งออกไปยัง csv เพิ่มGEOMETRY=AS_WKTในฟิลด์ "Layer" แต่ตัวคั่นเขตข้อมูลที่ส่งออกเป็นเครื่องหมายจุลภาค: CSV พร้อมฟิลด์ WKT

ปัญหาคือว่าแต่ละพิกัดของรูปหลายเหลี่ยมของฉัน (และฉันคิดว่ามันจะเหมือนกันสำหรับบรรทัด) จะถูกคั่นด้วยเครื่องหมายจุลภาคด้วยดังนั้นฉันจึงไม่สามารถนำเข้าข้อมูลกลับเข้าไปใน QGIS

ด้วย shapefile จุดมันทำงานเหมือนมีเสน่ห์

ไม่มีใครรู้ว่าฉันสามารถเลือกเขตข้อมูลของฉันเมื่อส่งออกเป็น CSV หรือไม่ ยกตัวอย่างเช่นเลือกเครื่องหมายอัฒภาค?

ฉันค้นหาบนเว็บและเอกสารประกอบของ QGIS แต่ไม่พบอะไรเลย


2
คุณได้ตรวจสอบหน้าความช่วยเหลือยัง: gdal.org/ogr/drv_csv.html มันอธิบายวิธีการเปลี่ยนตัวคั่น
underdark

ฉันกำลังมองหา QGIS โดยเฉพาะ ... ไม่คิดว่าจะขอความช่วยเหลือจาก GDAL ขอบคุณ !!
fgcartographix

คำตอบ:


17

ฉันสามารถส่งออกเป็น CSV โดยใช้เครื่องหมายจุลภาคนอกเหนือจากเครื่องหมายจุลภาคโดยแยกตัวเลือกการสร้างเลเยอร์ในกล่องโต้ตอบบันทึกเป็น .. ด้วยการแบ่งบรรทัด

เครื่องหมายจุลภาคและช่องว่างไม่แยกพวกเขา (แม้ว่าพวกเขาจะอยู่ในเครื่องหมายคำพูด) ทำงาน แต่ linebreaks ทำเคล็ดลับ เพื่อเน้น ..

วิธีการนี้ใช้งานได้ (คั่นด้วยการแยกบรรทัด):

GEOMETRY=AS_WKT
SEPARATOR=SEMICOLON
LINEFORMAT=CRLF

แต่วิธีการเหล่านี้ใช้ไม่ได้ ...

(ตัวเลือกที่คั่นด้วยช่องว่าง):

GEOMETRY=AS_WKT SEPARATOR=SEMICOLON

(ตัวเลือกที่คั่นด้วยเครื่องหมายจุลภาค):

GEOMETRY=AS_WKT, SEPARATOR=SEMICOLON

(ที่ยกมาและช่องว่างหรือ LCO คั่นด้วยเครื่องหมายจุลภาค):

"GEOMETRY=AS_WKT", "SEPARATOR=SEMICOLON"

ดังที่ @underdark ระบุไว้มีตัวเลือกเพิ่มเติมบางอย่างที่กล่าวถึงในหน้าไดรเวอร์ OGR CSV ที่คุณอาจต้องการทราบ โดยเฉพาะSEPARATORพารามิเตอร์จะยอมรับอย่างใดอย่างหนึ่งSEMICOLONหรือนอกเหนือไปจากTAB COMMAนอกจากนี้คุณอาจต้องการทดสอบกับLINEFORMATพารามิเตอร์ซึ่งรองรับCRLF(dos / windows) หรือLF(unix)

รูปภาพบอกหนึ่งพันคำดังนั้นนี่คือหน้าจอคว้า :)

ป้อนคำอธิบายรูปภาพที่นี่


ขอบคุณ! มันใช้งานได้ดี ฉันไม่รู้ว่าทำไม แต่เมื่อฉันพยายามนำเข้า csv ของฉันไปยัง QGIS มันบอกว่ามันไม่ใช่เลเยอร์ที่ถูกต้องและสามารถเพิ่มลงในแผนที่ได้ ... ? ฉันลองใช้รูปหลายเหลี่ยมแบบง่าย (linestring และรูปหลายเหลี่ยม) และมันก็ใช้งานไม่ได้ :( ดังนั้นฉันเดาว่านี่เป็นคำถามอีกข้อในขณะนี้ ... ;)
fgcartographix

... ที่น่าสนใจ ฉันไม่แน่ใจว่าจะอธิบายยังไง ฉันพยายามเพิ่มสิ่งที่ฉันสร้างลงในแผนที่และใช้งานได้ จากนั้นฉันลองเพิ่มใหม่ตามที่มันสร้างขึ้น (เช่นผ่านตัวเลือก "เพิ่มไฟล์ที่บันทึกไปยังแผนที่") และมันก็ใช้งานได้ QGIS รุ่นใด 1.8?
elrobis

1.8.0-Lisboa ใช้งานได้เมื่อฉันใช้ปุ่ม "เพิ่มไฟล์ที่บันทึกไปยังแผนที่" ไม่ใช่เมื่อฉันใช้ปุ่ม "เพิ่มเลเยอร์ข้อความที่คั่น" ตัวคั่นเครื่องหมายอัฒภาคถูกตรวจสอบเช่นเดียวกับเขตข้อมูลของฉัน "WKT" ที่เลือกสำหรับเรขาคณิต ... มันทำงานกับเลเยอร์จุดก่อนหน้านี้แม้ว่า ...
fgcartographix

1
อ๊ะ .. ลองไปที่ปุ่ม "เพิ่ม Vector Layer .. " (เช่นเดียวกับที่คุณต้องการเพิ่มรูปร่างไฟล์) จากนั้นเรียกดูโฟลเดอร์ของคุณ.csvด้วย ที่ด้านล่างของ "เปิด OGR สนับสนุนเวกเตอร์ชั้นโต้ตอบ" ชุด "ชนิดแฟ้ม:" Comma Separated Value [OGR]เพื่อ จากนั้นคุณ.csvควรจะปรากฏขึ้นและฉันเดิมพันมันจะทำงาน
elrobis

คุณเดิมพันถูกต้อง! มันทำงานร่วมกับ "เพิ่มเลเยอร์ข้อความที่คั่น" หลังจากที่ฉันเปิด csv ของฉันใน Excel และบันทึกใหม่อีกครั้ง ... แปลก ๆ แต่ถ้ามันทำงานกับปุ่ม "เพิ่มเวกเตอร์เลเยอร์" ฉันก็โอเค พฤติกรรมแปลก ๆ ...
fgcartographix

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.