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

Python เป็นภาษาโปรแกรมโอเพ่นซอร์สที่ใช้ในโปรแกรม GIS จำนวนมาก

4
วิธีการนำเข้า qgis.core ไปยังแอพ Python
ฉันใหม่กับ Python ฉันต้องการสร้างแอพ GIS ด้วย Python โดยใช้ห้องสมุด QGIS บน Window 7 64 บิต วิธีที่ฉันทำ: ติดตั้ง QGIS 1.7.0 ฉันตั้งค่า PYTHONPATH = D: \ Program Files (x86) \ Quantum GIS Wroclaw \ apps \ qgis \ python ฉันรัน python จาก cmd ในไฟล์ D: \ Program (x86) \ Quantum GIS Wroclaw \ bin …
11 python  qgis 

5
Python, ห้องสมุดรูปร่างดี: เป็นไปได้ไหมที่จะทำการเลียนแบบรูปหลายเหลี่ยมรูปร่าง?
ฉันพยายามสร้างสี่เหลี่ยมผืนผ้าที่หมุนในพิกัดละติจูด / ลองจิจูด โดยทั่วไปฉันมีพิกัดของจุดศูนย์กลางและมุมการหมุนรอบจุดศูนย์กลาง เป็นไปได้ที่จะใช้, หุ่นดีหรือ gdal หรืออย่างอื่น?

3
กำลังแปลงละติจูด, ลองจิจูด (epsg: 4326) เป็น EPSG: 3857?
ฉันต้องการศึกษาคณิตศาสตร์ที่เกี่ยวข้องเพื่อดูว่าละติจูดและลองจิจูดที่กำหนดเป็นองศาทศนิยมสามารถแปลงเป็น EPSG: 3857 ได้อย่างไร ทุกคนสามารถชี้ไปที่การอ้างอิงที่ดีหรือเป็นไปได้รหัส Ppython / C / C ++ / Java ห้องสมุดที่เป็นไปได้สำหรับการตรวจสอบคณิตศาสตร์?

1
วิธีเชื่อมต่อ Qgis กับ pycharm ใน Ubuntu OS
ฉันเพิ่งเริ่มใช้ pycharm กับ qgis แต่ไม่สามารถเชื่อมต่อทั้งคู่ได้ Pycharm ยังคงอยู่ในสถานะ "รอการเชื่อมต่อ" อยู่เสมอ บทเรียนส่วนใหญ่มีจุดไปที่ windows แต่ฉันใช้ Ubuntu ดังนั้นจึงไม่สามารถหาวิธีการแก้ปัญหารหัส qgis บน pycharm นี่คือรหัส pycharm ของฉัน: from shapely.geometry import * from shapely.wkt import loads import sys import pydevd pydevd.settrace('localhost', port=53100, stdoutToServer=True, stderrToServer=True) class Loader: def __init__(self, iface): """Initialize using the qgis.utils.iface object passed from the console. …
10 qgis  python  ubuntu  pycharm 

1
แปลง shapefile จากพิกัดที่ฉายโดยใช้ Python
มือใหม่ที่นี่ต้องดิ้นรนกับ GIS ฉันพยายามที่จะแผนที่ออกวอร์ดสำหรับเมือง Milwuakee โดยใช้ shapefiles พบได้บนเว็บไซต์ของพวกเขาเขตเว็บไซต์เขต ฉันติดตามกระทู้ที่นี่ด้วยความสำเร็จ รหัสของฉันให้: from pyproj import Proj, transform # wisconsing EPSG:32054 # epsg:4326 is for the entire world, wgs 84...not obvious inProj = Proj(init='epsg:32054') outProj = Proj(init='epsg:4326') x1,y1 = 2560131.496875003, 406816.434375003 x2,y2 = transform(inProj,outProj,x1,y1) print(x2,y2) กับเอาท์พุท -65.70220967836329 43.08590211722421 ปัญหานี้เป็นสิ่งที่ผิด The lon / lat สำหรับมิลวอกีคือ …

1
QGIS Modeler if / else เงื่อนไขสคริปต์ที่กำหนดเองสำหรับ Modeler
ฉันต้องการทำให้ฟังก์ชั่น if / else ง่าย ๆ ภายใน Model ของฉันและฉันต้องการทราบว่าเป็นไปได้หรือไม่ ฉันต้องการให้สิ่งนี้ทำเช่นนั้นหากมีการเลือกอินพุทสำหรับ 'เซกเมนต์เลเยอร์' ซึ่งไม่จำเป็นต้องดำเนินการ 'เซกเมนต์ (meanhift)' และใช้ 'เซกเมนต์เลเยอร์' แทนอินพุทสำหรับกระบวนการถัดไป อินพุตสำหรับ 'การแบ่งส่วน (meanhift)' มีดังนี้ อัปเดตหลังจากพยายามใช้คำตอบของโจเซฟ: ฉันใช้รหัสต่อไปนี้และได้รับข้อผิดพลาดนี้ อัปเดต 2 หลังจากเปลี่ยนพารามิเตอร์ฉันได้รับข้อผิดพลาดในบรรทัด 28 นี่คือ 'else:' stands ##Example=name ##BGREN=optional raster ##Segment_Layer=optional vector ##output=output vector if BGREN is not None: processing.runalg('otb:segmentationmeanshift', \ -BGREN\ -0\ -70\ -70\ -0.1\ -100\ …

3
วิธีสร้างรูปหลายเหลี่ยมรูปร่างจากรายการพิกัดโดยใช้ python gdal / ogr?
ฉันพยายามสร้างรูปหลายเหลี่ยมรูปร่างจากรายการพิกัดโดยใช้เครื่องมือหลามโอเพนซอร์ส ต่อไปนี้คือสิ่งที่ฉันได้เพื่อให้ห่างไกลที่ถูกแฮ็กด้วยกันจากงูหลาม GDAL / OGR ตำราและGIS นี้ตอบ มีคำถามที่คล้ายกันPython: วิธีการสร้างรูปหลายเหลี่ยม Shapefile จากรายการของพิกัด X, Y pyshpแม้ว่าคำถามนี้จะหมายถึงการใช้ อย่างไรก็ตามฉันสนใจที่จะสร้างไฟล์รูปหลายเหลี่ยมโดยใช้เครื่องมือหลาม gdal / ogr เท่านั้น import ogr def create_polygon(coords): ring = ogr.Geometry(ogr.wkbLinearRing) for coord in coords: ring.AddPoint(coord[0], coord[1]) # Create polygon poly = ogr.Geometry(ogr.wkbPolygon) poly.AddGeometry(ring) return poly.ExportToWkt() def write_shapefile(poly, out_shp): """ https://gis.stackexchange.com/a/52708/8104 """ # Now convert …
10 python  gdal  polygon  ogr 

1
อัลกอริทึมเบิร์ชไม่ได้จัดกลุ่มตามที่คาดไว้
ฉันใช้อัลกอริธึมเบิร์ชจากแพคเกจ Python แบบเรียนรู้ scipy สำหรับการจัดกลุ่มชุดของจุดในเมืองเล็ก ๆ แห่งหนึ่งในจำนวน 10 ชุด ฉันใช้รหัสต่อไปนี้: no = len(list_of_points)/10 brc = Birch(branching_factor=50, n_clusters=no, threshold=0.05,compute_labels=True) ในความคิดของฉันฉันมักจะจบลงด้วยชุด 10 คะแนน ในกรณีของฉันตอนนี้ฉันมี 650 คะแนนสำหรับการรวมกลุ่มและ n_clusters คือ 65 แต่ปัญหาของฉันคือการที่มีขีด จำกัด ต่ำเกินไปฉันจะจบลงด้วย 1 ที่อยู่ต่อหนึ่งคลัสเตอร์เพียงแค่ขีด จำกัด ที่ใหญ่กว่าเล็ก ๆ - 40 ที่อยู่ต่อหนึ่งคลัสเตอร์ ฉันทำอะไรผิดที่นี่

1
วิธีเติมแผนที่ผู้แต่งด้วยข้อมูล Canvas และองค์ประกอบการส่งออกเป็น png โดยใช้สคริปต์ Python ใน QGIS
ฉันต้องการสร้างสคริปต์ Python ใน QGIS ที่จะใช้ข้อมูลบางอย่าง (shp + tif ในตัวอย่างของฉัน) ใช้ tamplate Map Composer (จากไฟล์) และส่งออกองค์ประกอบที่สร้างไปยังรูปภาพ png แทบจะไม่มีประสบการณ์ในการเขียนโปรแกรม (น้อยกว่าความรู้พื้นฐานของ Python) ฉัน google snippets โค้ดบางส่วนและพยายามทำให้มันทำงานร่วมกันได้ ฉันใช้รหัส Map Composer จากบางคำถามที่ตอบก่อนหน้านี้: บันทึกมุมมองนักแต่งเพลงพิมพ์ / แผนที่ QGIS เป็น PNG / PDF โดยใช้ Python (โดยไม่ต้องเปลี่ยนอะไรในเค้าโครงที่มองเห็น)? ฉันจัดการโหลดข้อมูลและเทมเพลต Map Composer (มีแผนที่เดียวและรายการคำอธิบายแผนภูมิ) แต่ภาพ png ที่ส่งออกของฉันมีกรอบแผนที่ว่างเปล่า (ไม่มีข้อมูลเวกเตอร์ / แรสเตอร์ภายในเฟรม) ไอเท็มคำอธิบายดูดี ความช่วยเหลือเกี่ยวกับการทำให้รหัสนี้ทำงานอย่างไร …

2
วิธีออกจาก QGIS หลังจากรันสคริปต์ python
ฉันต้องการเรียกใช้สคริปต์ python ผ่านqgis --code myscript.pyแล้วออกจากทันที ฉันใช้iface.actionExit().trigger()ซึ่งฆ่า QGIS เมื่อฉันเรียกใช้จากคอนโซลหลาม --codeแต่ไม่เมื่อใส่ในสคริปต์ที่ผมผ่านไป วิธีที่ถูกต้องในการออกจากทันทีคืออะไร ฉันใช้ QGIS 2.0.1 อัปเดต : ฉันได้ลองsys.exit()แล้ว QGIS จับมันและดึงหน้าต่างขึ้นมาด้วยสิ่งต่อไปนี้: An error occured during execution of following code: execfile('myscript.py') Traceback (most recent call last): File "", line 1, in File "myscript.py", line 14, in sys.exit() SystemExit อัปเดต : ใช้os.kill(os.getpid(), 9)งานได้ แต่มันแฮ็คสกปรกและฉันกำลังมองหาสิ่งที่ดีกว่า
10 qgis  python  pyqgis 

1
การตัดเส้นเพื่อรับการข้ามโดยใช้ Python กับ QGIS?
ฉันมีชุดของเส้นที่แสดงถึงรถบัส เส้นบางเส้นทับซ้อนกันและใช้ถนนเส้นเดียวกัน ฉันสามารถสกัดโหนด อย่างไรก็ตามฉันสนใจที่จะแยกวกเท่านั้นเช่นนี้: ฉันจะทำสิ่งนี้ได้อย่างไร ฉันกำลังมองหาวิธีด้วย QGIS หรือ Python ฉันลองใช้วิธีการตัดกันจาก GDAL Python แต่สิ่งนี้จะให้ผลตอบแทนฉันในจุดสูงสุดเท่านั้น วิธีเส้นแยกจาก QGIS ผลตอบแทนที่ฉันข้ามถ้าสองเส้นข้าม อย่างไรก็ตามในกรณีที่รถบัสสองสายวิ่งไปไกลกว่าเส้นทางของพวกเขาบนถนนสายเดียวกันมันก็ไม่ได้ทำให้ฉันเห็นว่าพวกเขาอยู่ตรงไหน

2
รับพิกัดและค่าพิกเซลที่สอดคล้องกันจาก GeoTiff โดยใช้ python gdal และบันทึกเป็นอาร์เรย์แบบ numpy
ฉันจะได้รับพิกัดที่ฉายรวมถึงค่าพิกเซลจริงที่พิกัดเหล่านั้นจากไฟล์ GeoTiff จากนั้นบันทึกลงในอาร์เรย์แบบ numpy ได้อย่างไร ฉันมีไฟล์ arsenci020l.tif และพิกัดอยู่ในหน่วยเมตร ด้านล่างคือผลลัพธ์ย่อของ gdalinfo ที่ฉันวิ่งไป ~$ gdalinfo arsenci020l.tif Driver: GTiff/GeoTIFF Files: arsenci020l.tif arsenci020l.tfw Size is 10366, 7273 Coordinate System is: PROJCS["Lambert Azimuthal Equal Area projection with arbitrary plane grid; projection center 100.0 degrees W, 45.0 degrees N", GEOGCS["WGS 84", DATUM["WGS_1984", SPHEROID["WGS 84",6378137,298.257223563, AUTHORITY["EPSG","7030"]], AUTHORITY["EPSG","6326"]], …

1
การอ้างอิงทางภูมิศาสตร์โดยใช้ GDAL และ Python?
ฉันต้องการที่จะ georeference แรสเตอร์ที่ใช้และpython GDALแนวทางปัจจุบันของฉันคือการโทรgdal_translateและgdalwarpใช้os.systemและรายการจุดควบคุมภาคพื้นดินที่น่าเกลียด ฉันต้องการวิธีการทำสิ่งนี้ภายในpythonจริงๆ นี่เป็นกระบวนการปัจจุบันที่ฉันใช้: import os os.system('gdal_translate -of GTiff -gcp 1251.92 414.538 -7.9164e+06 5.21094e+06 -gcp 865.827 107.699 -7.91651e+06 5.21104e+06 "inraster.tif" "outraster1.tif"') os.system('gdalwarp -r bilinear -tps -co COMPRESS=NONE "outraster2.tif" "outraster3.tif"') มีก่อนหน้านี้คือคำถามและคำตอบจาก 2012 ซึ่งระบุว่าสามารถเข้าถึงได้หลังจากการนำเข้าgdal_translate gdalฉันไม่แน่ใจว่าล้าสมัยหรือว่าผิด แต่เมื่อฉันรันfrom osgeo import gdalฉันไม่เห็นgdal.gdal_translateตัวเลือก ฉันไม่รู้ว่ามันมีอยู่หรือไม่ แต่ฉันจะรักถ้าฉันสามารถแปลและปฏิเสธ rasters ในแบบ pythonic ตัวอย่างเช่น: # translate gcp_points = [(1251.92, …

5
Raster diff: วิธีตรวจสอบว่าภาพมีค่าเหมือนกันหรือไม่?
มีวิธีตรวจสอบเพื่อดูว่าเลเยอร์แรสเตอร์ที่กำหนด 2 รายการมีเนื้อหาเหมือนกันหรือไม่? เรามีปัญหาเกี่ยวกับปริมาณพื้นที่เก็บข้อมูลที่ใช้ร่วมกันในองค์กรของเรา: ขณะนี้มีขนาดใหญ่มากซึ่งใช้เวลามากกว่า 3 วันในการสำรองข้อมูลเต็มรูปแบบ การตรวจสอบเบื้องต้นพบว่าหนึ่งในผู้ร้ายที่กินพื้นที่มากที่สุดคือเปิด / ปิดแรสเตอร์ที่ควรเก็บเป็นเลเยอร์ 1 บิตด้วยการบีบอัด CCITT อิมเมจตัวอย่างนี้เป็น 2 บิตในปัจจุบัน (ดังนั้นค่าที่เป็นไปได้ 3 ค่า) และบันทึกเป็นไฟล์บีบอัด LZW ขนาด 11 MB ในระบบไฟล์ หลังจากแปลงเป็น 1 บิต (เพื่อให้มี 2 ค่าที่เป็นไปได้) และใช้การบีบอัด CCITT Group 4 เราได้รับการลดลงเหลือ 1.3 MB เกือบเต็มตามลำดับความสำคัญของการออม (อันที่จริงแล้วเป็นพลเมืองที่ประพฤติตัวดีมีคนอื่นเก็บไว้เป็น 32 บิตลอย!) นี่เป็นข่าวที่น่าอัศจรรย์! อย่างไรก็ตามมีเกือบ 7,000 ภาพที่จะใช้เช่นกัน มันจะตรงไปตรงมาในการเขียนสคริปต์เพื่อบีบอัดพวกเขา: for old_img in …

2
ArcGIS ModelBuilder สามารถเปิดไฟล์ Excel สำหรับการแก้ไขด้วยตนเองได้หรือไม่
ฉันได้รับมอบหมายให้สร้างแบบจำลองโดยใช้ ArcGIS ModelBuilder ซึ่งเริ่มทำงานเกี่ยวกับการประมวลผลทางภูมิศาสตร์สองครั้งก่อนแล้วจึงเข้าร่วมตาราง Excel กับผลลัพธ์ของกระบวนการทางภูมิศาสตร์เหล่านั้น อย่างไรก็ตามโมเดลจำเป็นต้องเปิดไฟล์ Excel ก่อนเพื่อให้ผู้ใช้แก้ไขได้ด้วยตนเองก่อนที่ผู้ใช้จะบันทึกการแก้ไขและปิดไฟล์ จากนั้นคาดว่าโมเดลจะรวมไฟล์ Excel นี้เข้ากับตารางแอ็ตทริบิวต์ของชุดข้อมูล (ยังเป็นส่วนหนึ่งของโมเดล) ก่อนที่โมเดลจะดำเนินการต่อโดยมีงานการประมวลผลทางภูมิศาสตร์อื่นจำนวนมาก ฉันรวมโครงร่างระดับสูงด้านล่างเพื่อช่วยแสดงให้เห็นถึงจุด (ฉันเข้าใจว่านี่อาจไม่สมเหตุสมผลเลยที่จะเริ่มต้นด้วย) ดังนั้นโมเดลจะทำงานเสร็จงานการประมวลผลทางภูมิศาสตร์สองสามอย่างหยุดชั่วคราวเพื่อเปิดไฟล์ Excel รอให้ผู้ใช้แก้ไขบันทึกและปิดก่อนที่จะกลับไปเข้าร่วมไฟล์ Excel นั้นในตารางคุณลักษณะแล้วจึงเรียกใช้ตัวเลข งานการประมวลผลทางภูมิศาสตร์อื่น ๆ ฉันควรจินตนาการว่าสิ่งนี้จะต้องรวมสคริปต์ Python หรือสองตัวในแบบจำลอง ขณะนี้ฉันสนใจที่จะทราบว่าแนวคิดนี้เป็นไปได้จริงหรือไม่

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