การเข้าร่วมไฟล์ CSV ที่ไม่ใช่เชิงพื้นที่กับข้อมูลเชิงพื้นที่ (รูปร่างไฟล์) โดยใช้ QGIS?


40

ฉันมีไฟล์ CSV ซึ่งมีข้อมูลรหัสไปรษณีย์ในเขตข้อมูล แต่ไม่ใช่เชิงพื้นที่เช่นไม่มีการ Easting และ Northing

ฉันมี shapefile พร้อมรหัสไปรษณีย์ในฟิลด์และมีข้อมูลเพิ่มเติม

ฉันต้องการเข้าร่วม CSV กับ shapefile ตามแอตทริบิวต์ (เขตข้อมูลรหัสไปรษณีย์) ฉันรู้ว่าฉันสามารถทำได้ใน ArcMap แต่ฉันจะบรรลุสิ่งเดียวกันใน QGIS ได้อย่างไร


คุณจะทำสิ่งนี้ในรุ่น 2.3.0-Master ได้อย่างไร

ในรุ่น 2.8 (และก่อนหน้านี้บางรุ่นก่อนหน้านี้ด้วย) ฉันไม่สามารถใช้งานได้ พยายามเข้าร่วมการจับคู่กับข้อมูลรหัสไปรษณีย์ในสหราชอาณาจักร ใช้ mmqgis ฉันได้รับข้อผิดพลาด "ไม่มีรูปเรขาคณิตในเลเยอร์รหัสไปรษณีย์" หรืออะไรที่คล้ายกันมาก การใช้ฟังก์ชั่นการเข้าร่วม QGIS ฉันได้รับการเข้าร่วมของข้อมูล แต่ไม่มีการเพิ่มรูปทรงเรขาคณิตลงใน CSV ผิดหวังมากกับปัญหานี้
Rostranimin

1
สวัสดี @Rostranimin คุณทำถูกวิธีเช่นเข้าร่วมข้อมูล CSV กับข้อมูลรูปร่างไฟล์จากกล่องโต้ตอบ "คุณสมบัติ" รูปร่างหรือไม่
stragu

คำตอบ:


28

วิธีที่รวดเร็วคือการใช้ปลั๊กอิน mmqgisซึ่งจะเข้าร่วมไฟล์ csv ของคุณกับ shapefile ด้วยฟิลด์รหัสไปรษณีย์

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


4
เฮ้ดู! มีปลั๊กอินเบราว์เซอร์ไฟล์ของฉันคือ: D
นาธาน W

1
Good Work นาธาน - ใช้มันเยอะใช้งานได้ดี
Mapperz

1
สิ่งนี้ใช้ได้ดีสิ่งที่เราต้องการ ขอบคุณมาก!
gisuser

สวัสดีฉันพยายามทำ แต่ฉันได้รับข้อผิดพลาดต่อไปนี้ Traceback (การโทรล่าสุดครั้งล่าสุด): ไฟล์ "C: /Users/Juan/.qgis/python/plugins \ mmqgis \ mmqgis_dialogs.py", บรรทัดที่ 65 ใน dial_infiles = csv.Sniffer (). sniff (infile.read (1024)) ไฟล์ "C: \ PROGRA ~ 1 \ QUANTU ~ 1 \ apps \ Python25 \ lib \ csv.py", บรรทัดที่ 160, ในข้อผิดพลาดในการเพิ่ม sniff "สามารถ ไม่ทราบตัวคั่น "ข้อผิดพลาด: ไม่สามารถกำหนดตัวคั่น

@Carlos: ตัวคั่นใดที่คุณใช้ในไฟล์ CSV
underdark

39

การเปิดตัว QGIS เวอร์ชัน 1.7 ที่กำลังจะเกิดขึ้นจะมีคุณสมบัติการรวมที่มีอยู่ในคุณสมบัติของเลเยอร์ ความเร็วในการเชื่อมยังค่อนข้างน่าประทับใจ

ขั้นตอนในการเข้าร่วม:

  1. เปิด csv ผ่านไอคอนเปิดเวกเตอร์
  2. เปิดแท็บคุณสมบัติบนเลเยอร์ที่คุณต้องการเข้าร่วม (แผนที่ของคุณ)
  3. คลิกที่แท็บเข้าร่วมแล้วกดปุ่ม +
  4. เลือกเลเยอร์ csv และสองคอลัมน์ที่คุณต้องการเข้าร่วม
  5. กดตกลงในกล่องโต้ตอบคุณสมบัติ

เข้าร่วมใน QGIS


ดี การเพิ่มไฟล์ csv โดยใช้ Add Vector layer นั้นไม่ง่ายนัก ฉันหวังว่าฉันรู้เรื่องนี้ก่อนหน้านี้
RK

1
สี่ปีต่อมาและสิ่งนี้ยังไม่สามารถใช้งานได้อย่างน่าเชื่อถือเหมือนกับ MMQGIS plugin IME
camdenl

1
นี่เร็วกว่าปลั๊กอิน MM มาก ในการเพิ่มชั้นข้อมูลให้ใช้ชั้น -> เพิ่มตัวคั่นข้อความ -> csv
สถิติการเรียนรู้ตามตัวอย่าง

0

หากคุณโหลดข้อมูลของคุณลงใน MS Access ftools จะอนุญาตให้คุณเข้าร่วมกับตาราง MS Access

คุณเริ่มการติดตั้งปลั๊กอิน qgis เปิดใช้งาน repos ของบุคคลที่สามและ ftools จะสามารถใช้ได้

จากนั้นใช้เครื่องมือปลั๊กอินโดยไปที่ fTools> เครื่องมือการจัดการข้อมูล> เข้าร่วมคุณสมบัติ


ขอบคุณฉันไม่ต้องการใช้โปรแกรมอื่นเพื่อไปที่นั่น แต่ฉันจะลองทำหากสิ่งอื่นล้มเหลว
gisuser

0

ปลั๊กอิน fTools สำหรับทำงานกับข้อมูล Vector จะให้ตัวเลือกเดียวกันกับคุณ "เข้าร่วมข้อมูลในแอตทริบิวต์" แม้ว่าจะไม่ใช่เชิงพื้นที่ก็ตาม


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