วิธีการพล็อตรูปทรงระดับกลางโดยอัตโนมัติด้วย QGIS, GRASS GIS หรือ SAGA GIS?


10

ฉันทำแผนที่เทือกเขาที่สูงชัน เส้นชั้นความสูงหลักของฉันคือ 50 ม. และช่วงชั้นความสูงระดับกลางของฉันคือ 10 ม. ในพื้นที่สูงชันช่วงเวลา 10 ม. เล็กเกินไปดังนั้นฉันต้องออกจากช่วง 10 ม. และใช้ 20 ม. หรือ 25 ม. แทน

มีวิธีการทำเช่นนั้นโดยอัตโนมัติในQGIS , SAGA GISหรือGRASS GIS ?

คำตอบ:


7

คุณสามารถลองวางทับเส้นชั้นความสูงของคุณด้วยตารางความชันและแสดงเฉพาะเส้นชั้นความสูงขึ้นอยู่กับค่าเฉลี่ยของความลาดชันด้านล่างเส้นชั้นความสูง


ทางออกที่น่าสนใจ! คุณจะเข้าร่วมเชิงพื้นที่เพื่อเชื่อมโยงค่าเฉลี่ยของความชันกับเส้นชั้นความสูงหรือไม่?
Simbamangu

@Simba ใช้สถิติเชิงพื้นที่ มันอาจจะทำงานได้ดียิ่งขึ้นในการลบเส้นชั้นความสูงที่มีความชันสูงสุดเป็นวงแคบเกินไป
whuber

2

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


2

ถ้าฉันเข้าใจปัญหาอย่างถูกต้องคุณกำลังทำงานกับ Shapefile ที่มีรูปทรงทั้งหมดที่สร้างไว้แล้ว คุณควรมีตารางแอตทริบิวต์ที่มีค่า contour เป็นหนึ่งในฟิลด์ - ตัวอย่างเช่น 'contour':

ID      contour
 1         1000
 2         1010
 3         1020
 4         1030

ใน QGIS คุณสามารถทำสองสิ่ง หนึ่งคือการสร้างสำเนาของ Shapefile แล้วลบรูปทรงที่คุณไม่ต้องการ:

  1. เริ่มเซสชั่นแก้ไขเปิดตารางคุณสมบัติและเปิดเครื่องคิดเลขฟิลด์
  2. เลือก 'สร้างฟิลด์ใหม่' และทำให้เป็นฟิลด์จำนวนเต็ม เรียกมันว่า 'เก็บ'
  3. ป้อนในฟิลด์ 'expression' นิพจน์ที่จะให้หมายเลข 1 แก่คุณหากตรงตามเงื่อนไขที่ถูกต้อง - คุณต้องการเก็บรูปทรงทั้งหมดที่มีทวีคูณเป็น 20 ดังนั้น: contour LIKE '%00' OR contour LIKE '%20' OR contour LIKE '%40' OR contour LIKE '%60' OR contour LIKE '%80'(ฟังก์ชัน 'จับคู่' นี้ไม่สวย แต่ QGIS ขาดฟังก์ชั่นคณิตศาสตร์แบบโมดูโลที่จะทำให้ดีกว่านี้ - ฉันคิดว่า)
  4. คลิก 'ตกลง' และคุณจะมีคอลัมน์ใหม่ที่มี 1 โดยที่รูปทรงมีหลายรายการเป็น 20 และเลขศูนย์ที่ไม่มี
  5. ค้นหา (เลือก) แถวทั้งหมดที่เก็บ = 0 และลบออก Shapefile ใหม่ของคุณในขณะนี้ได้แยกรูปร่างอื่น ๆ

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

  1. เปิดไดอะล็อกคุณสมบัติและเลือกแท็บสไตล์
  2. เลือก 'ตามกฎ' ที่ด้านซ้ายบน
  3. เพิ่มกฎ (กดปุ่ม 'เพิ่ม') สำหรับรูปทรงที่ตรงกับเงื่อนไขที่คุณต้องการ
    • ในกล่องโต้ตอบคุณสมบัติกฎให้ป้อนป้ายกำกับเช่น '20'
    • ในกล่องตัวกรองให้ป้อนนิพจน์ที่จะจับคู่เช่นเดียวกับที่อยู่ด้านบน: contour LIKE '%00' OR contour LIKE '%20' OR contour LIKE '%40' OR contour LIKE '%60' OR contour LIKE '%80'
    • เลือกสไตล์สัญลักษณ์ที่คุณต้องการใช้จากนั้นคลิกตกลงและใช้สไตล์นั้น

ณ จุดนี้การแสดงรูปทรงเท่านั้นจะเป็นรูปแบบที่ตรงกับนิพจน์

สิ่งที่ยอดเยี่ยมเกี่ยวกับตัวเลือกที่สองคือคุณสามารถสร้างกฎสำหรับเครื่องชั่งที่แตกต่างกัน- คุณสามารถมีกฎหนึ่งข้อเมื่อคุณซูมออกในระดับที่แสดงซึ่งอาจเป็นเพียงรูปทรง 100 เมตร ('% 00' เท่านั้นใน expression) จากนั้นกฎอีกข้อหนึ่งที่แสดงรูปทรง 20 เมตรเมื่อซูมเข้าไปอีกเป็นต้น

หากคุณกำลังมองหาวิธีในการสร้างรูปทรง 25 เมตรใหม่ระหว่าง 100 เมตรรูปทรงคุณอาจจะดีกว่าที่จะสร้างไฟล์รูปร่างใหม่จากแบบจำลองระดับความสูงแบบดิจิทัล ฉันไม่แน่ใจว่ามีวิธีการใด ๆ ที่น่าเชื่อถือและถูกต้องแก้ไขรูปทรง 25 เมตรใหม่ระหว่างรูปทรงอื่นหรือไม่


0

นี่คือวิธีที่ฉันทำเมื่อฉันมีรูปร่าง shape (หรือฐานข้อมูล Spatialite) ที่มี contours ในแนวดิ่งที่ระยะ 10 เมตรและฉันต้องการพล็อตเฉพาะ contours ที่เกิดขึ้นที่ช่วง (50 เมตร)

โหลด shapefile และสอบถามโดยใช้ส่วนของ SQL นี้: '(ELEV% 50) = 0' โดยที่ 'ELEV' เป็นแอตทริบิวต์ที่มีข้อมูลการยก

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