การลบรูปหลายเหลี่ยม“ เกลือและพริกไทย” ขนาดเล็กออกจากชั้นใน QGIS หรือไม่


11

ฉันมีแผนที่ประกอบขึ้นจากรูปหลายเหลี่ยมหลายรูปโดยมีจุดสองสามแสนจุดที่มีขนาดเล็กมากอยู่ภายใน

ฉันต้องการรูปหลายเหลี่ยมขนาดใหญ่ แต่ไม่ได้ชี้รูปหลายเหลี่ยมขนาดเล็ก ฉันจะเลือกวิธีการและลบทุกจุดรูปหลายเหลี่ยมขนาดเล็กในขณะที่รักษารูปหลายเหลี่ยมขนาดใหญ่? (เห็นได้ชัดว่าฉันไม่ต้องการทำสิ่งนี้ด้วยตนเอง - มีคะแนนน้อยเกินไป!)

ฉันใหม่ทั้งหมดกับ QGIS และฉันได้ Googled กว้างขวางโดยไม่มีโชค อาจเป็นเพราะฉันไม่แน่ใจว่าคำศัพท์ที่ถูกต้องที่จะใช้ในการค้นหาของ Google คืออะไร!

ไฟล์ที่ฉันใช้คือ. dbf, .prj, .qpj, .shp และ. shx ฉันแค่ลากไฟล์. shp ไปยัง QGIS และแผนที่จะปรากฏเป็นเลเยอร์เดียว โดยทั่วไปแผนที่ของสหราชอาณาจักรแบ่งออกเป็นภูมิภาค (ซึ่งฉันต้องการ) และครอบคลุมในจุด (ซึ่งไม่ต้องการ)

มุมมองแผนที่ มุมมองตาราง

นี่คือสิ่งที่ดูเหมือนว่าใกล้ชิด ฉันละลายเพื่อดูว่าพวกเขาเข้าไปในเลเยอร์โดยรอบโดยไม่มีโชคหรือไม่:

มุมมองระยะใกล้ของรูปหลายเหลี่ยม


4
ดูเหมือนว่าคุณกำลังใช้ shapefiles (.shp) แต่ละ Shapefile สามารถมีหนึ่งคะแนน, จุด, หรือรูปหลายเหลี่ยมเท่านั้น ดังนั้นหนึ่งในรูปร่างของคุณจะมีภูมิภาคของสหราชอาณาจักรเป็นรูปหลายเหลี่ยมและอีก 1 (หรือมากกว่า) ของรูปร่างของคุณจะมีเพียงคะแนน หากคุณเปิด / ปิดรูปร่างไฟล์ในสารบัญ (ช่องทำเครื่องหมายถัดจากพวกเขา) คุณจะเห็นว่าข้อมูลใดถูกเก็บไว้ในแต่ละไฟล์ จากนั้นคุณสามารถลบไฟล์ที่มีคะแนน
Dan_h_b

1
ใครเป็นผู้สร้างข้อมูลหรือคุณได้ข้อมูลมาจากไหน ดูเหมือนว่า (ตามรูป) คุณมีรูปหลายเหลี่ยมที่มีรูอยู่
HeikkiVesanto

1
ฉันเห็นด้วยกับ Vesanto ว่าถ้าเป็นเพียงชั้นเดียวมันอาจเป็นรูปหลายเหลี่ยมที่มีรูอยู่ในนั้นหรือรูปหลายเหลี่ยมที่มีขนาดเล็กมาก ในกรณีนี้คุณสามารถรวมรูปหลายเหลี่ยมเข้าด้วยกันได้ เช่นเลือกรูปหลายเหลี่ยมที่อยู่ภายในรูปใหญ่แล้วรวมเข้าด้วยกัน คุณสามารถซูมเข้าและให้ภาพหน้าจอโคลสอัพของ "คะแนน" บนแผนที่ของคุณได้หรือไม่?
Chris P

1
โอกาสใดที่คุณสามารถแนบไฟล์ shp ได้?
Dan_h_b

1
ตกลงดังนั้นฉันจะบอกว่าคุณมีรูปหลายเหลี่ยมหลายส่วน (ตามข้อเท็จจริงมีเพียง 17 แถวในตารางแอตทริบิวต์ของคุณ) หากคุณกระจายข้อมูลของคุณเป็นรูปหลายเหลี่ยมส่วนเดียวคุณจะพบกับรูปหลายเหลี่ยม 100 รูป (Vector> เครื่องมือรูปทรงเรขาคณิต> Multipart ไปยังส่วนเดียว) จากนั้นคุณควรจะสามารถเลือกตามพื้นที่ (เช่นเลือกพื้นที่เล็ก ๆ จริง ๆ ) และลบออกเพื่อกำจัดรูปหลายเหลี่ยมเล็ก ๆ เหล่านี้หรือในลักษณะที่คล้ายกันคุณควรจะสามารถละลายพวกมันออกเป็นรูปหลายเหลี่ยมขนาดใหญ่ที่ตก ภายใน.
Dan_h_b

คำตอบ:


22

ดูเหมือนว่าคุณกำลังทำงานกับข้อมูลรหัสจุดสำรวจอาวุธยุทโธปกรณ์ซึ่งเป็นชุดข้อมูลของพื้นที่รหัสไปรษณีย์ในบริเตนใหญ่และไอร์แลนด์เหนือ

"คะแนน" ที่คุณอ้างถึงคือรูปหลายเหลี่ยมสี่เหลี่ยมเล็ก ๆ ที่เรียกว่า "ถนนแนวตั้ง": กองซ้อนของรหัสไปรษณีย์มากกว่าหนึ่งโพสต์ซึ่งไม่สามารถแสดงได้โดยใช้รูปหลายเหลี่ยม "ธรรมดา" (ดูความคิดเห็นของ Andy Harfoot สำหรับรายละเอียดเพิ่มเติม ) คุณอาจต้องคิดอีกครั้งเกี่ยวกับการลบรูปหลายเหลี่ยมเหล่านี้หากคุณต้องการรหัสไปรษณีย์ที่ได้รับผลกระทบสำหรับการวิเคราะห์ของคุณ

ที่กล่าวมานี่เป็นวิธีที่คุณสามารถลบรูปหลายเหลี่ยมเหล่านี้:

  1. เลือกทั้งหมดสถานที่รูปหลายเหลี่ยมแนวตั้งโดยคลิกที่ "เลือกคุณสมบัติการใช้การแสดงออก" "POSTCODE" LIKE 'V%'และป้อน นี่จะเป็นการเลือกคุณสมบัติทั้งหมดที่มีรหัสไปรษณีย์เริ่มต้นVซึ่งเป็นถนนแนวตั้ง

  2. เพียงแค่การลบคุณสมบัติจะไม่ช่วยได้เนื่องจากรูปหลายเหลี่ยมจะทำให้เกิดช่องโหว่ตามที่คุณได้สังเกตเห็นแล้ว แต่คุณสามารถรวมถนนตามแนวตั้งเข้ากับรูปหลายเหลี่ยมขนาดใหญ่ที่อยู่ใกล้เคียงโดยใช้ "เครื่องมือ Vector / Geoprocessing / กำจัดรูปหลายเหลี่ยมเศษส่วน" เพื่อบันทึกผลลัพธ์เป็นไฟล์ใหม่

  3. คุณอาจได้รับข้อความเตือนว่าคุณลักษณะบางอย่างไม่สามารถละลายได้พร้อมกับรายการรหัสคุณลักษณะ หากคุณต้องการกำจัดคุณลักษณะเหล่านี้ให้เลือกถนนแนวตั้งในเลเยอร์ใหม่โดยใช้นิพจน์จากก่อนหน้าจากนั้นทำอย่างใดอย่างหนึ่งต่อไปนี้:

    1. หากคุณต้องการวิธีการแก้ปัญหาอัตโนมัติคุณสามารถละลายถนนแนวตั้งด้วยรูปหลายเหลี่ยมที่อยู่ใกล้เคียงทั้งหมด บันทึกส่วนที่เลือกไปยังเลเยอร์ใหม่โดยใช้ "เลเยอร์ / บันทึกส่วนที่เลือกเป็นไฟล์เวคเตอร์" จากนั้นใช้ "Vector / เครื่องมือวิจัย / เลือกตามตำแหน่ง" เพื่อเลือกคุณสมบัติในเลเยอร์ที่ผสานซึ่งตัดกับถนนแนวตั้งที่ไม่พอใจ . จากนั้นละลายการเลือกนี้โดยใช้ "Vector / Geoprocessing Tools / Dissolve" โดยเลือก--- Dissolve all ---ใน "Dissolve field" โปรดทราบว่าวิธีการนี้สามารถนำไปสู่การยุบรูปสี่เหลี่ยมขนมเปียกปูน "เหมาะสม" ที่ไม่พึงประสงค์หากถนนแนวดิ่งที่ละเมิดอยู่ในขอบเขตของรูปหลายเหลี่ยมสองรูปแบบอื่น ๆ

    2. หากคุณต้องการหลีกเลี่ยงการยุบรูปหลายเหลี่ยมอื่นคุณสามารถเลือกถนนแนวตั้งและรูปหลายเหลี่ยมที่อยู่ติดกันด้วยตนเองได้โดยระวังไม่ให้เลือกรูปหลายเหลี่ยมที่อยู่ติดกันสองแห่ง


3
การเดินผ่านแหล่งที่มาความเสี่ยงตัวเลือกและดำเนินการ OP ที่ยอดเยี่ยมอย่างชาญฉลาด
RyanKDalton

1
จุดด้อย - ถนนในแนวดิ่งมีตำแหน่งที่มีกองซ้อนในแนวตั้งมากกว่าหนึ่งรหัสไปรษณีย์ทำให้ไม่สามารถแสดงรูปหลายเหลี่ยมแบบ 'ธรรมดา' ในชุดข้อมูลได้ สิ่งนี้มักเกิดขึ้นในอาคารที่อยู่อาศัยหรืออาคารสำนักงาน รายการจะแสดงเป็นเพื่อนร่วมกับชุดข้อมูลรูปหลายเหลี่ยม codepoint หลักที่ขยายรหัสถนนแนวตั้ง (เริ่มต้นด้วย V) เป็นรหัสไปรษณีย์หลายชุดที่ประกอบด้วย
Andy Harfoot

@AndyHarfoot: อ่าใช่ขอบคุณสำหรับการชี้แจง! ฉันได้แก้ไขคำตอบของฉัน
Jake

นั่นมันยอดเยี่ยม - ขอบคุณ มีอยู่สิ่งหนึ่ง - ฉันไม่พบฟีเจอร์ที่เลือกโดยใช้เครื่องมือ Expression หรือ Vector / Geoprocessing / กำจัดรูปหลายเหลี่ยมแบบเศษไม้ ฉันอยู่ที่ 1.8.0 Lisboa ฉันจำเป็นต้องอัพเกรดหรือไม่
งงงวยและสับสน

2

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

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