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

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

1
สร้าง DEM ระดับนาโนด้วย GDAL
อาจมีคำถามแปลก ๆ เล็กน้อย แต่ขอให้ฉันให้คำอธิบายพื้นหลังแก่คุณก่อนคำถามจริงของฉัน: กล้องจุลทรรศน์แรงอะตอม (AFM)เป็นวิธีการที่ในระยะสั้น (และความรู้ จำกัด ของฉัน) ช่วยให้นักวิจัยสแกนพื้นที่ที่ไมโครและระดับนาโน มันทำงานโดย "สแกน" พื้นที่โดยใช้โพรบที่แปลก ๆ ยิ่งยากที่จะอธิบายเพราะฉันไม่มีความเข้าใจที่แท้จริง สิ่งที่ฉันรู้และสิ่งที่กระตุ้นความอยากรู้ของฉันก็คือผลลัพธ์ที่ได้คือค่า "กริด" ของ "ความสูง" (เมทริกซ์ของค่า 512x512 ที่อธิบายความสูงของโพรบ ณ จุดนั้น) ฉันคิดว่า: นอกเหนือจากสเกลแล้วนี่เป็นแบบจำลองระดับความสูงแบบดิจิตอล! และนี่หมายความว่าถ้าฉันสามารถจัดการเพื่อสร้างไฟล์ DEM ตามที่เข้าใจโดยเครื่องมือ GIS ฉันสามารถใช้การวิเคราะห์ GIS กับมันได้! ความสำคัญของฉันคืองานอื่น ๆ ในห้องแล็บที่มีเครื่อง AFM และใช้มันในโครงการหนึ่งของเธอ ฉันได้รับไฟล์สแกนจากเธอและมีการจัดการโดยใช้ Python (struct และ numpy) เพื่อแยกวิเคราะห์ไฟล์ไบนารีเหล่านี้และสิ่งที่ฉันมีตอนนี้คืออาร์เรย์ขนาด numpy ขนาด 512x512 ที่เต็มไปด้วยค่า int16 สิ่งที่ฉันวางแผนไว้ในครั้งต่อไปและสิ่งที่ฉันต้องการความช่วยเหลือคือ …

1
วิธีใช้ GDAL กับ PyPy
ฉันพยายามที่จะเพิ่มประสิทธิภาพของฉันรหัสหลามใช้pypy ในขณะที่ฉันสามารถนำเข้าห้องสมุดส่วนใหญ่และทำงานได้สำเร็จ แต่ฉันไม่สามารถนำเข้าห้องสมุด GDAL ได้ ไลบรารีเดียวกันเมื่อนำเข้าใน Python 2.7 ทำงานได้ดี ฉันได้ลองเพิ่มตำแหน่ง GDAL ไปยัง PYTHONPATH แล้วและลองดาวน์โหลดการรวม GDAL Python ไปยังไดเรกทอรี PyPy แต่อย่างใด pypy ไม่ต้องการรู้จัก GDAL และมาพร้อมกับข้อผิดพลาดต่อไปนี้ Traceback (most recent call last): File "app_main.py", line 51, in run_toplevel File "ImportENC-P.py", line 50, in <module> from osgeo import gdal, ogr, osr File "B:\PYPY\site-packages\osgeo\__init__.py", line 21, …
14 python  gdal 

1
Python เพิ่มขนาดไฟล์ของ. mdd ของฉัน
ฉันมีสคริปต์การประมวลผลทางภูมิศาสตร์ที่ทำงานต่อไปนี้ .. arcpy.AddMessage("TEST...") ใช่เพียงหนึ่งบรรทัดของรหัส .mxd ว่างเปล่าเริ่มต้นที่ 391kb สำหรับฉันเมื่อฉันเรียกใช้สคริปต์และบันทึกขนาดไฟล์ที่เพิ่มขึ้น 391 kb 431 kb 451 kb 471 kb and so on... สคริปต์ python สำหรับกระบวนการทางภูมิศาสตร์ดูเหมือนว่าจะเพิ่มขนาดไฟล์โดย 20-30 kb ในแต่ละครั้ง ฉันใช้การทดสอบนี้กับสคริปต์จริงที่ทำบางสิ่งบางอย่างและเพิ่มขนาดไฟล์ 40-60 kb ... ฉันยังใช้งานสคริปต์เปล่าที่ไม่ทำอะไรเลยนอกจากมันจะรันและยังเพิ่มขนาดไฟล์ได้ถึง 20-30kb ... จากสิ่งที่ฉันสามารถหาESRI Tech การเพิ่มขนาดไฟล์อาจเกิดจากผลลัพธ์ทางภูมิศาสตร์จำนวนมากที่เก็บไว้ในแท็บผลลัพธ์ใน ArcToolbox ใน ArcCatalog ทำตามขั้นตอนในบทความฉันสามารถลดขนาดไฟล์จาก 589 kb เป็น 293 kb โดยบันทึกเป็น. mxd ใหม่ ความคิดประสบการณ์กับสิ่งนี้ของคุณ? มีใครพบวิธีที่จะลบแท็บผลลัพธ์โดยอัตโนมัติจากสคริปต์ไพ ธ …
14 python  arcmap  memory 


5
การจัดกลุ่มวิถี (ข้อมูล GPS ของ (x, y) คะแนน) และการขุดข้อมูล
ฉันมีคำถาม 2 ข้อเกี่ยวกับการวิเคราะห์ชุดข้อมูล GPS 1) ไบร์ทแยกฉันมีฐานข้อมูลขนาดใหญ่ของพิกัด GPS (latitude, longitude, date-time)บันทึกในรูปแบบ ตามค่าวันที่และเวลาของระเบียนที่ต่อเนื่องฉันพยายามแยกวิถี / เส้นทางทั้งหมดตามด้วยบุคคล ตัวอย่างเช่น กล่าวว่าจากเวลาMที่คู่ที่มีการเปลี่ยนแปลงอย่างต่อเนื่องจนกว่าจะถึงเวลา(x,y) Nหลังจากนั้นNการเปลี่ยนแปลงของ(x,y)คู่จะลดลง ณ จุดที่ฉันสรุปว่าเส้นทางที่นำมาจากเวลาMเป็นNสามารถเรียกว่าวิถี นั่นเป็นวิธีการที่เหมาะสมในการติดตามเมื่อทำการแยกไบร์ทหรือไม่? มีวิธี / วิธี / อัลกอริทึมที่รู้จักกันดีที่คุณสามารถแนะนำได้หรือไม่? มีโครงสร้างข้อมูลหรือรูปแบบใดที่คุณอยากจะแนะนำให้ฉันรักษาจุดเหล่านั้นอย่างมีประสิทธิภาพ? บางทีสำหรับแต่ละเส้นทางการหาความเร็วและความเร่งจะเป็นประโยชน์หรือไม่ 2) การขุดเส้นทางการเคลื่อนที่เมื่อฉันมีเส้นทางการเคลื่อนที่ / เส้นทางที่นำมาทั้งหมดฉันจะเปรียบเทียบ / จัดกลุ่มได้อย่างไร ฉันต้องการทราบว่าจุดเริ่มต้นหรือจุดสิ้นสุดมีความคล้ายคลึงกันแล้วเส้นทางกลางจะเปรียบเทียบได้อย่างไร ฉันจะเปรียบเทียบ 2 เส้นทาง / เส้นทางและสรุปได้อย่างไรว่าพวกมันเหมือนกันหรือไม่ นอกจากนี้; ฉันจะรวมกลุ่มเส้นทางที่คล้ายกันเข้าด้วยกันได้อย่างไร ฉันจะขอขอบคุณอย่างมากหากคุณสามารถชี้ให้ฉันไปทำวิจัยหรืออะไรที่คล้ายกันในเรื่องนี้ การพัฒนาจะอยู่ใน Python แต่ยินดีต้อนรับคำแนะนำห้องสมุดทุกประเภท ฉันกำลังเปิดคำถามเดียวกันที่แน่นอน/programming/4910510/comparing-clustering-trajectories-gps-data-of-xy-points-and-mining-the-dataใน StackOverflow คิดว่าฉันจะได้คำตอบเพิ่มเติมที่นี่ ...

7
วิธีการใช้แผนที่มูลค่าโดยอัลฟาใน GIS?
ฉันได้ทำการอ่านพื้นหลังบางอย่างเกี่ยวกับ cartograms เร็ว ๆ นี้และเจอทางเลือกที่น่าสนใจ - คุ้มค่าโดยอัลฟา แผนที่ แนวคิดที่อธิบายไว้ในรายละเอียดเพิ่มเติมที่นี่และกระดาษเต็มสามารถใช้ได้ [ไม่เปิดเผยสรรพสินค้า] [นี่] 2 มีรายละเอียดบางอย่างเกี่ยวกับการใช้งานบนบล็อก indiemaps : ... กราฟิกข้างต้นทั้งหมดผลิตด้วย ActionScript 3 โดยใช้โปรแกรมแก้ไขข้อความและ Flex SDK ฟรีล่าสุด ... คุณจะใช้งานอะไรแบบนั้นในแพ็คเกจ GIS (ArcGIS? QuantumGIS?) ได้อย่างไร? หรือ R และ ggplot2? หรืองูใหญ่?

4
พื้นที่ใน KM จากรูปหลายเหลี่ยมของพิกัด
ฉันมีรูปหลายเหลี่ยมจากพิกัดใน (python shapely) ที่มีลักษณะเช่นนี้ POLYGON ((24.8085317 46.8512821, 24.7986952 46.8574619, 24.8088238 46.8664741, 24.8155239 46.8576335, 24.8085317 46.8512821)) ฉันต้องการคำนวณพื้นที่ของรูปหลายเหลี่ยมนี้ใน km ^ 2 อะไรจะเป็นวิธีที่ดีที่สุดในการทำสิ่งนี้ใน Python?
14 python  polygon  area  shapely 

3
Gdal: การตัดแรสเตอร์ด้วยแรสเตอร์อื่น
ฉันกำลังเขียนยูทิลิตี้ง่าย ๆ ในการครอบตัดไฟล์แรสเตอร์ geotiff หลายแบนด์ไปยังพื้นที่ (เล็กกว่า) เดียวกัน เมื่อใช้ gdalwarp ฉันสามารถครอบตัดไฟล์ได้อย่างง่ายดายโดยใช้รูปทรงการตัดรูปหลายเหลี่ยมเดียว: gdalwarp -cutline clipper.shp -crop_to_cutline input.tif output.tif อย่างไรก็ตามพื้นที่จริงที่ฉันต้องการคลิปจะถูกกำหนดไว้ในขั้นต้นเสมอโดยไฟล์แรสเตอร์ geotiff อื่นไม่ใช่ไฟล์รูปร่าง มันจะดีถ้าฉันสามารถใช้ขอบเขตของแรสเตอร์นั้นเป็นไฟล์รูปวาด แต่ฉันไม่แน่ใจว่าจะทำอย่างไร น่าแปลกใจที่สิ่งต่อไปนี้ใช้งานไม่ได้ (มันไม่ได้ทำให้เกิดข้อผิดพลาด แต่ก็ไม่ได้สร้างอะไร): gdalwarp -cutline clipper.tif-crop_to_cutline input.tif output.tif ดังนั้นคำถามของฉันคือมีวิธีให้แรสเตอร์gdalwarp -cutline? อีกวิธีหนึ่งมีฟังก์ชัน gdal อื่นที่สามารถคลิปแรสเตอร์โดยใช้แรสเตอร์อื่นได้หรือไม่ หากไม่มีสิ่งเหล่านี้เป็นไปได้มีวิธีที่ง่ายมากในการสร้างรูปร่างไฟล์ที่มีรูปหลายเหลี่ยมเดียวที่กำหนดโดยขอบเขตของแรสเตอร์หรือไม่? รหัสนี้จะถูกห่อหุ้มด้วยสคริปต์ไพ ธ อนที่กว้างขวางกว่าดังนั้นฉันสามารถใช้ยูทิลิตี้บรรทัดคำสั่ง gdal หรือการผูกไพ ธ อนใด ๆ สำหรับ gdal ในฐานะที่เป็นบันทึกด้านข้างฉันรู้ว่าฉันสามารถสร้างรูปทรงการตัดได้อย่างง่ายดายซึ่งครอบคลุมขอบเขตของแรสเตอร์ของฉันใน QGIS ฉันอาจเลิกทำหากไม่พบวิธีแก้ปัญหาที่ตรงไปตรงมา แต่ท้ายที่สุดฉันจะเลิกใช้ยูทิลิตีนี้ในหลายสิบถ้าไม่ใช่พื้นที่นับร้อยซึ่งเป็นส่วนหนึ่งของการวิเคราะห์อัตโนมัติขนาดใหญ่ดังนั้นฉันจึงไม่อยากจะเบื่อ ขั้นตอนแบบแมนนวลแม้ว่าจะง่ายมาก
14 python  raster  gdal  clip  gdalwarp 


2
วิธีรับ GDAL เพื่อสร้างสถิติสำหรับ GTiff ใน Python
ฉันสร้าง raster GeoTIFF ของตัวเองเป็นประจำกับ GDAL ใน Python เช่น: from osgeo import gdal from numpy import random data = random.uniform(0, 10, (300, 200)) driver = gdal.GetDriverByName('GTiff') ds = driver.Create('MyRaster.tif', 200, 300) band = ds.GetRasterBand(1) band.WriteArray(data) ds = band = None # save, close อย่างไรก็ตามเมื่อดูผลลัพธ์ด้วย ArcCatalog / ArcGIS มันจะเป็นสีดำหรือเทาเนื่องจากไม่มีสถิติ สิ่งนี้สามารถแก้ไขได้ด้วยการคลิกขวาที่แรสเตอร์และเลือก "คำนวณสถิติ ... …

4
การส่งออกฟีเจอร์พร้อมไฟล์แนบสำหรับใช้นอก ArcGIS?
ArcGIS 10 มีคุณสมบัติความสามารถใหม่ในการเพิ่มสิ่งที่แนบมากับคุณสมบัติแต่ละอย่างเพื่อจัดเก็บคลาสในฐานข้อมูลภูมิศาสตร์ การใช้สิ่งนี้เพียงอย่างเดียวคือการเพิ่มรูปภาพหลายภาพไปยังสถานที่เฉพาะเจาะจงhydrants ไฟดูเหมือนจะเป็นตัวอย่างที่นิยม (สำคัญที่จะต้องรู้ว่าคุณเป็นสุนัขบนอินเทอร์เน็ตในความต้องการของการหยุดหลุมฉันคิดว่า) ในฐานข้อมูลโครงสร้างของคลาสคุณลักษณะที่เปิดใช้งานสิ่งที่แนบมาคือสามเท่า: คลาสฟีเจอร์เอง ตารางที่เก็บสิ่งที่แนบและเมตาดาต้าที่เกี่ยวข้อง (ชื่อไฟล์, ขนาด, ฯลฯ ) และ คลาสความสัมพันธ์ที่กำหนดความสัมพันธ์แบบ 1 ต่อหลายคนระหว่างทั้งสอง คำถามของฉันคือ: วิธีการส่งออกข้อมูลนี้ - คลาสคุณลักษณะ, สิ่งที่แนบ, ข้อมูลเมตาของสิ่งที่แนบมา - เพื่อการบริโภคนอก Arcgis? * การส่งออก FC นั้นเป็นเรื่องง่ายFeatureClassToFeatureClassทำงานเหมือนกับบน FC ที่ไม่ได้เปิดใช้งาน กำลังส่งออกตารางสารบัญหรือไม่ ไม่มากนัก. TableToTableไปยัง output.dbf แยกเมตะดาต้าของไฟล์ที่แนบมาเท่านั้นไปยังข้อผิดพลาด output.csv ด้วยประเภทเขตข้อมูลที่ไม่ได้รับการสนับสนุนและไปที่ตารางข้อมูลผลลัพธ์ล้มเหลวพร้อมข้อผิดพลาดฟิลด์ทั่วไป นี่ไม่ใช่สิ่งที่น่าแปลกใจเนื่องจากไฟล์ประเภทเหล่านั้นไม่สนับสนุนประเภทข้อมูลไบนารี blob ฉันคาดหวัง / หวังว่าจะพบเครื่องมือที่จะแปลงไบนารีที่แนบมาเป็นรูปแบบดั้งเดิมเช่น แล้วมันเป็นอย่างไร ฉันต้องทำอะไรเพื่อให้ได้ข้อมูลออกมา * แดกดันโครงการของฉันในช่วงเวลาที่วางไข่ Q นี้คือการส่งออกเพื่อใช้ภายใน …

3
geopandas spatial เข้าร่วมช้ามาก
ฉันใช้รหัสด้านล่างเพื่อค้นหาประเทศ (และบางครั้งระบุ) สำหรับจุด GPS นับล้าน รหัสในปัจจุบันใช้เวลาประมาณหนึ่งวินาทีต่อจุดซึ่งช้ามากอย่างไม่น่าเชื่อ ไฟล์รูปร่างคือ 6 MB ฉันอ่านว่า geopandas ใช้ rtrees สำหรับการรวมเชิงพื้นที่ทำให้พวกมันมีประสิทธิภาพอย่างเหลือเชื่อ แต่สิ่งนี้ดูเหมือนจะไม่ทำงานที่นี่ ผมทำอะไรผิดหรือเปล่า? ฉันหวังเป็นพันคะแนนต่อวินาทีหรือมากกว่านั้น สามารถดาวน์โหลด shapefile และ csv ได้ที่นี่ (5MB): https://www.dropbox.com/s/gdkxtpqupj0sidm/SpatialJoin.zip?dl=0 import pandas as pd import geopandas as gpd from geopandas import GeoDataFrame, read_file from geopandas.tools import sjoin from shapely.geometry import Point, mapping,shape import time #parameters shapefile="K:/.../Shapefiles/Used/World.shp" …

4
วิธีที่เร็วที่สุดในการแปลงแรสเตอร์ขนาดใหญ่เป็นแบบหลายเส้นโดยใช้ R หรือ Python?
ฉันมีไฟล์แรสเตอร์ขนาดใหญ่ (129,600 คูณ 64,800 พิกเซล) ที่มีแหล่งน้ำทั่วโลก (1 บิตค่า 0 และ 1) และพยายามที่จะแยกมหาสมุทรและชายฝั่งน้ำจืด ฉันได้ลองกับ ArcGIS และ QGIS เพื่อแปลงจาก raster เป็น polyline แต่ใช้เวลานาน มีใครรู้วิธีที่ดีกว่า / เร็วกว่า (Python หรือ R) หรือเป็นเครื่องมือที่ดีกว่าสำหรับงานนี้หรือไม่? ปรับปรุง R: rasterToContour อาจเร็วและแม่นยำ แต่ถ้าคุณมีชุดข้อมูลขนาดใหญ่มากเช่นฉัน (8,398,080,000 พิกเซล) คุณต้องมี RAM จำนวนมาก (มากกว่า 16GB) หรือบังคับ R เพื่อทำการประมวลผลเพิ่มเติมบนฮาร์ดไดรฟ์และมัน จะใช้เวลานานด้วย Python / GDAL: gdal_poligonize สร้างรูปหลายเหลี่ยมแทนโพลีน อัปเดต …
14 python  r  performance 

2
Python, GDAL และสร้างตารางแอตทริบิวต์ raster
ฉันมีแรสเตอร์จำนวนเต็มที่ฉันต้องการสร้างตารางแอตทริบิวต์แรสเตอร์โดยใช้ Python และ GDAL ฉันสามารถสร้างตารางแอตทริบิวต์ GDAL raster ใน Python ดังนี้ >>> rat = gdal.RasterAttributeTable() ใช้งานได้ดีอย่างที่เราเห็น: >>> rat <osgeo.gdal.RasterAttributeTable; proxy of <Swig Object of type 'GDALRasterAttributeTableShadow *' at 0x0000000002A53D50> > ตารางที่สร้างขึ้นจึงไม่มีแถวหรือคอลัมน์: >>> rat.GetRowCount() 0 >>> rat.GetColumnCount() 0 ฉันสร้างคอลัมน์ชื่อ "ค่า" เพื่อเก็บค่าที่ไม่ซ้ำใน raster: >>> rat.CreateColumn("Value", gdalconst.GFT_Integer, gdalconst.GFU_MinMax) 0 นี่เป็นเรื่องปกติและมีการอัปเดตจำนวนคอลัมน์: >>> rat.GetColumnCount() 1 ตอนนี้ฉันต้องเพิ่มค่า …

6
การอ่านข้อมูลดิบลงใน geopandas
เป็นไปได้ไหมที่จะอ่านข้อมูลดิบลงใน a geopandas GeoDataFrame, a la a pandas DataFrame? ตัวอย่างเช่นงานดังต่อไปนี้: import pandas as pd import requests data = requests.get("https://data.cityofnewyork.us/api/geospatial/arq3-7z49?method=export&format=GeoJSON") pd.read_json(io.BytesIO(r.content)) สิ่งต่อไปนี้ไม่: import geopandas as gpd import requests data = requests.get("https://data.cityofnewyork.us/api/geospatial/arq3-7z49?method=export&format=GeoJSON") gpd.read_file(io.BytesIO(r.content)) กล่าวอีกนัยหนึ่งเป็นไปได้ไหมที่จะอ่านข้อมูลเชิงพื้นที่ที่อยู่ในหน่วยความจำโดยไม่บันทึกข้อมูลนั้นลงดิสก์ก่อน

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