คำถามติดแท็ก qgis

QGIS เป็นแอพพลิเคชั่น GIS ข้ามแพลตฟอร์มที่ได้รับอนุญาตภายใต้ GNU General Public License

2
การผสานเลเยอร์เวกเตอร์ผ่าน python ใน QGIS 2.18.1
ฉันกำลังใช้รหัสต่อไปนี้เพื่อรวมเลเยอร์เวกเตอร์สองตัวเข้าด้วยกัน: def append_layers(layer1, layer2, output): from processing.core.Processing import Processing Processing.initialize() import processing.tools processing.tools.general.runalg("qgis:mergevectorlayers", layer1, layer2, output) append_layers(layer1.shp, layer2.shp, output.shp) ดูเหมือนว่าจะทำงานได้ดีใน QGIS 2.14 แต่ล้มเหลวใน 2.18.1 พร้อมกับข้อความต่อไปนี้: Error: Wrong number of parameters ALGORITHM: Merge vector layers มีบางสิ่งที่เปลี่ยนแปลงระหว่าง 2.14 และ 2.18 หรือไม่ หรือฉันแค่คิดถึงบางสิ่งที่ชัดเจนจริงๆ?

3
การสร้างรูปหลายเหลี่ยมในพื้นที่ว่างจากรูปหลายเหลี่ยมอื่นใน QGIS
ฉันมีไฟล์เวคเตอร์ซึ่งฉันได้สร้างรูปหลายเหลี่ยม แต่ระหว่างรูปหลายเหลี่ยมฉันมีพื้นที่ว่าง พื้นที่ว่างเปล่าทั้งหมดนี้ฉันต้องการสร้างรูปหลายเหลี่ยมทั้งหมด แต่จนถึงตอนนี้ฉันไม่สามารถหาวิธีที่จะทำได้
9 qgis  polygon  vector 

1
ข้อมูลการศึกษาระดับปริญญา Interpolating โดยใช้ QGIS?
ฉันต้องการสร้างแผนที่ลม มีความรู้เบื้องต้นสำหรับการเป็นArcGISและQGIS เนื่องจากฉันไม่สามารถเข้าถึงนักวิเคราะห์เชิงพื้นที่ได้ฉันจึงลองใช้เวอร์ชั่น QGIS อย่างไรก็ตามฉันไม่ทราบวิธีการแก้ไขข้อมูลองศา ตัวอย่างเช่นทิศทางลมอาจเป็น 359 °ที่จุดหนึ่งและ 1 °ที่จุดที่สอง ค่าระหว่างจุดนี้น่าจะเป็น 359 °, 0 °หรือ 1 ° เนื่องจากการแก้ไขไม่ทราบว่าเป็นข้อมูลระดับจึงดูเหมือนว่าค่าการประมาณจะอยู่ที่ประมาณ 180 ° ฉันจะแก้ไขข้อมูลระดับโดยใช้ QGIS ได้อย่างไร

2
การแยกข้อความจากฟิลด์สตริงก่อนตัวคั่นแต่ละตัวกับฟิลด์ใหม่
ฉันพยายามที่จะดึงข้อมูลข้อความจากเขตข้อมูลสตริงที่มีข้อความคั่นด้วยจุดและวางไว้ในสาขาใหม่โดยใช้เครื่องคิดเลขฟิลด์ ฉันใช้ฟังก์ชัน python นี้ (นำมาจากวิธีการแยกข้อความก่อน / ใน QGIS? ): from qgis.core import * from qgis.gui import * @qgsfunction(args='auto', group='Custom') def func(value1, feature, parent): return value1.split('.')[0] ส่งคืนข้อความทั้งหมดก่อนจุดแรก ตอนนี้ฉันสงสัยว่าจะเขียนฟังก์ชันเพื่อวางแถวข้อความที่คั่นด้วยแต่ละตัวในฟิลด์แยก ก่อน: หลังจาก:

1
กำลังบันทึกดัชนีเชิงพื้นที่ใน QGIS API หรือไม่
ฉันกำลังพยายามสร้างดัชนีเชิงพื้นที่สำหรับรูปร่างบางไฟล์โดยใช้ Qgis API ฉันได้ทำตามขั้นตอนที่อธิบายไว้ในบล็อกของ Nathan Woodrow ( https://nathanw.net/2013/01/04/using-a-qgis-spatial-index-to-speed-up-your-code/ ) และใช้งานได้ดี : layer = QgsVectorLayer(path, name, 'ogr') idx = QgsSpatialIndex() all_features = layer.getFeatures() map(idx.insertFeature, all_features) ปัญหาของฉันคือฉันไม่มีไฟล์ที่เป็นผลลัพธ์ (.qix? .sbn? .sbx?) ฉันจะบันทึกดัชนีเชิงพื้นที่นี้เพื่อให้ผู้ใช้ในอนาคตของรูปร่างไฟล์ได้ประโยชน์จากมันได้อย่างไร

1
เงื่อนไขในตัวคำนวณฟิลด์ตัวสร้างโมเดล
ฉันต้องการตรวจสอบไฟล์เวคเตอร์ถ้ามีคอลัมน์ "แหล่งที่มา" ถ้าใช่ไม่มีอะไรให้ทำ หากไม่มีคอลัมน์ "แหล่งที่มา" ควรสร้างและเติมด้วย '0' เป็นไปได้ไหมที่จะทำผ่านตัวสร้างโมเดล

2
การพยายามใช้เครื่องมือ“ ความแตกต่าง” ให้ข้อผิดพลาด“ QgsWKBTypes 'ไม่ได้ถูกกำหนด”
ฉันกำลังพยายามแยกชั้นเวกเตอร์ที่ซ้อนกันสองชั้นและค้นหาความแตกต่างใน QGIS 2.18 ฉันพยายามค้นหาความแตกต่างกับเลเยอร์ที่มีคะแนนและบัฟเฟอร์ด้วย ทั้งคู่ให้ข้อผิดพลาดต่อไปนี้: global name 'QgsWKBTypes' is not defined See log for more details ฉันค้นหาสิ่งนี้แล้ว แต่ไม่สามารถหาทางแก้ไขได้

3
เปลี่ยนการเข้ารหัสแหล่งข้อมูล Shapefile หรือไม่
ฉันพยายามเปลี่ยนเฉพาะการเข้ารหัสแหล่งข้อมูล shapefile ผ่านคุณสมบัติและวิธีการเข้ารหัส shapefiles จาก LATIN1 เป็น UTF-8 แต่มันไม่เปลี่ยน หากไม่มีการบันทึกโครงการ QGIS ฉันไม่สามารถเปลี่ยนการเข้ารหัสแหล่งข้อมูล shapefile โดยตรงได้หรือไม่ ฉันยังลองใช้รหัสนี้มันแสดงการเปลี่ยนการเข้ารหัส แต่เมื่อฉันเปิด shapefile อีกครั้งมันจะแสดงการเข้ารหัสระบบเดิม: for layer in QgsMapLayerRegistry.instance().mapLayers().values(): layer.setProviderEncoding(u'UTF-8') layer.dataProvider().setEncoding(u'UTF-8') print layer.name(), layer.dataProvider().encoding() (ฉันไม่ได้บันทึกโครงการ QGIS เพียงแค่เข้าถึงและบันทึก shapefile โดยตรงเมื่อฉันบันทึกโครงการและทำงานนี้มันจะทำงานอย่างถูกต้อง )
9 qgis  pyqgis  encoding 

2
เพิ่มไฟล์ Excel พร้อมรายการพิกัด QGIS เป็นชั้นหรือไม่
ฉันได้เพิ่มเลเยอร์ข้อความที่คั่นด้วย QGIS มาก่อนด้วยคอลัมน์ที่ประกอบด้วยละติจูดและลองจิจูดแยกกัน แต่ตอนนี้ฉันมีไฟล์ Excel เช่น: station no parcel no parcel coordinates 63 215 X1,Y1; X2,Y2; X3,Y3; X4,Y4 ดังนั้นฉันจึงมีพิกัดพัสดุทั้งหมดในหนึ่งคอลัมน์สำหรับทุกพัสดุ ฉันต้องการเพิ่มข้อมูลนี้ด้วยพัสดุลงใน Shapefile ก่อนหน้าของฉันโดยไม่มีสถานีข้อมูล แต่ฉันไม่สามารถหาวิธีนำเข้าพิกัดนี้ไปยัง QGIS ได้

1
การแนบชุดข้อมูลอิมเมจเซิร์ฟเวอร์ ArcGIS ใน QGIS?
ฉันได้ลองเพิ่มชุดข้อมูลใน QGIS โดยใช้ 'qgis.utils.iface.addRasterLayer ()' แต่มันจะพ่นข้อผิดพลาดนี้ เลเยอร์ไม่ถูกต้อง: ผู้ให้บริการ GDAL ไม่สามารถเปิดชุดข้อมูล GDAL http://precisionedgeag.com:8080/arcgis/rest/services/ImageServices/RapidEye_R_NDVI?f=json&pretty=true : `C: \ DOCUME ~ 1 \ 15937.DSM \ LOCALS ~ 1 \ Temp \ file.dat 'ไม่รู้จักเป็นรูปแบบไฟล์ที่รองรับ ผู้ให้บริการเลเยอร์แรสเตอร์ไม่ถูกต้อง (ผู้ให้บริการ: gdal, URI: http://precisionedgeag.com:8080/arcgis/rest/services/ImageServices/RapidEye_R_NDVI?f=json&pretty=true จะเพิ่มเซิร์ฟเวอร์ ArcGIS นี้ (ชุดข้อมูลอิมเมจเซอร์วิส) ใน QGIS ได้อย่างไร?

1
รวมเส้นคู่ขนานที่อยู่ติดกันและเพิ่มจำนวนเป็นแอตทริบิวต์ใน QGIS หรือไม่
ฉันมีเลเยอร์ที่มีหลายบรรทัดที่เป็นตัวแทนของเครื่องบินที่บินได้ เป้าหมายของฉันคือการสร้างแผนที่เพื่อวิเคราะห์การไหลของการจราจรในบางพื้นที่ ฉันต้องการรวมขนานทั้งหมดหรือใกล้กับเส้นคู่ขนานส่วนที่อยู่ภายในระยะทางที่กำหนดซึ่งกันและกัน (พูด 1 ไมล์ทะเล) บรรทัดใหม่ที่ผสานแล้วควรมีแอตทริบิวต์ที่มีจำนวนบรรทัดดั้งเดิมที่ถูกผสาน ตัวอย่างเช่นหาก 5 เส้นคู่ขนานถูกรวมเข้ากับหนึ่งบรรทัดที่ผสานใหม่ควรมีแอตทริบิวต์ count เป็น 5 ซึ่งจะช่วยให้ฉันจัดรูปแบบตามนั้น พิจารณาตัวอย่างวงจรต่อไปนี้: การป้อนข้อมูล: สามบรรทัดแยกกันสองเส้นมีส่วนคู่ขนานร่วมกัน ผลลัพธ์ที่ต้องการ: ส่วนทั่วไปของเส้นสีเขียวและสีส้มถูกรวมเข้ากับเส้นเดียว (สีแดง) เส้นสีแดงใหม่จะมีคุณสมบัตินับเป็น 2 หมายเหตุ:ในตัวอย่างนี้เส้นสีแดงจะเป็นค่าเฉลี่ยของกลุ่มบรรทัดสองต้นฉบับ ส่วนของเส้นสีเขียวและสีส้มที่เหลืออยู่ไม่จำเป็นต้องเชื่อมต่อกับเส้นสีแดงใหม่ กล่าวอีกนัยหนึ่งโทโพโลยีไม่จำเป็นต้องไม่บุบสลายเนื่องจากผลที่ได้จะใช้สำหรับการเป็นตัวแทนภาพ โดยพื้นฐานแล้วฉันกำลังพยายามสร้างสิ่งนี้: (ที่มา) ฉันจะทำอย่างไรเพื่อให้ได้ผลลัพธ์เช่นนี้ใน QGIS โปรดจำไว้ว่าชุดข้อมูลที่เกิดขึ้นจริงนั้นมีขนาดใหญ่กว่าตัวอย่างของฉันด้านบนดังนั้นโซลูชันควรปรับขนาดได้ ฉันเจอบทช่วยสอนนี้ซึ่งทำสิ่งที่คล้ายกับสิ่งที่ฉันพยายามทำมาก อย่างไรก็ตามฉันต้องการใช้ QGIS
9 qgis  line 

2
กำลังบันทึกผลลัพธ์การประมวลผลในไฟล์โดยใช้ตัวจำลอง QGIS หรือไม่
จากแบบจำลองฉันต้องการบันทึกผลลัพธ์การประมวลผลในไฟล์ ในแบบจำลองของฉันฉันมีExtract by locationอัลกอริทึม (ที่มีอินพุตแบบเวกเตอร์สองตัว) ให้ผลลัพธ์ที่สมเหตุสมผล แต่เป็นเลเยอร์ชั่วคราวซึ่งฉันต้องทำSave as...เอง ดีที่สุดฉันต้องการส่งเส้นทางไปยังแบบจำลองของฉันซึ่งผลลัพธ์ของฉันจะถูกบันทึกเป็น shapefiles (ในขั้นตอนแรก) นี่คือรูปแบบ โปรดทราบว่าเอาต์พุตเวกเตอร์ (ไฟล์) ไม่สามารถเชื่อมต่อกับผลลัพธ์การประมวลผลใด ๆ : ดังที่เห็นในภาพหน้าจอ a) เราสามารถส่งชื่อสำหรับผลลัพธ์สุดท้าย แต่ไม่ใช่ไฟล์แม้แต่ในSave selected featuresอัลกอริทึม b) ก) ข) ฉันมีความคิดที่คลุมเครือว่าจะบรรลุผลอย่างไรด้วยสคริปต์ไพ ธ อน แต่สิ่งนี้สามารถทำได้ด้วยการรวมกันของเครื่องมือที่มีอยู่หรือไม่

2
QGIS 2.16 การรวมไม่มีตัวเลือกโฟลเดอร์
ฉันได้ติดตั้ง QGIS 2.16 และสังเกตว่า Merge (เมนูเวกเตอร์> การจัดการข้อมูล) ดูเหมือนจะไม่มีตัวเลือกโฟลเดอร์อีกต่อไป นี่เป็นตัวเลือกที่อนุญาตให้คุณประมวลผล / รวมโฟลเดอร์ทั้งหมดโดยไม่ต้องโหลดเลเยอร์ในโครงการ / พื้นที่ทำงานของคุณก่อน ฉันดูการเปลี่ยนแปลงสำหรับ QGIS 2.16 - แม้ว่าเครื่องมือ fTools จะถูกแทนที่ด้วยเครื่องมือการประมวลผล แต่ฉันไม่สามารถดูได้ว่าทำไมฟังก์ชันพิเศษจึงถูกลบ

1
ฉันจะแบ่งพาร์ติชันเป็นจำนวนมากได้อย่างไร
ฉันมีข้อมูลตำแหน่งของลูกค้าที่มีมากกว่า 130 ล้านระเบียนกระจายอยู่ทั่วประเทศ นี่คือตารางเชิงพื้นที่ใน PostGIS ตอนนี้ฉันต้องการแบ่งทั้งประเทศเป็น 'พื้นที่ให้บริการ' ซึ่งแต่ละพื้นที่ให้บริการมี: อย่างน้อย 30 ลูกค้า อยู่ที่มากที่สุด 1,000 ตารางกิโลเมตร ฉันได้วิจัยเครื่องมือการรวมของ ArcGIS แล้ว แต่ไม่เป็นไปตามเกณฑ์ของฉันเนื่องจาก: มันไม่ได้นับขั้นต่ำในการพิจารณา ฉันมี Qgis & Grass เพียงแค่การกำจัดของฉัน เครื่องมือ / กระบวนการใดที่ฉันสามารถใช้เพื่อให้บรรลุสิ่งนี้
9 qgis  grass  partition 

1
ลงทะเบียน qgsfunction ที่กำหนดเองใน pyqgis
ฉันใช้ pyqgis ในแอปพลิเคชันแบบสแตนด์อโลน ตอนนี้ผมต้องการที่จะสร้างการแสดงออกที่กำหนดเองเพื่อที่จะใช้เป็น FilterExpression ruleBasedRendererV2ในการปกครองของ (ฉันลองใช้โหมดแสดงภาพกับฟังก์ชั่นที่มีอยู่ก่อนหน้าและทุกอย่างทำงานได้ดี!) Custom qgisfunction(bitwise AND-function - เนื่องจากยังไม่มีฟังก์ชั่นดังกล่าว) มีลักษณะดังนี้: from qgis.utils import qgsfunction @qgsfunction(args="auto", group='Python') def bitwise_and(value1, value2, feature, parent): return value1 & value2 ฉันพยายามลงทะเบียนผ่าน: from qgis.core import QgsExpression QgsExpression.registerFunction(bitwise_and) ทดสอบการแสดงออกผ่าน: expressionString = 'bitwise_and(2, 2) = 2' exp = QgsExpression(expressionString) if exp.hasParserError(): print(exp.parserErrorString()) (ให้2=2เสมอTrue) ทำงานหลังจากลงทะเบียนฟังก์ชั่นและล้มเหลวหากไม่ได้ แต่ถึงกระนั้นฉันไม่สามารถใช้การแสดงออกภายในกฎ …

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