ระบบสารสนเทศทางภูมิศาสตร์

ถามตอบสำหรับนักทำแผนที่นักภูมิศาสตร์และผู้เชี่ยวชาญด้าน GIS

3
basemaps ฟรีและทั่วโลกสำหรับการดาวน์โหลด
ฉันค่อนข้างมั่นใจว่าผู้คนจำนวนมากอาจต้องเผชิญกับสถานการณ์ที่พวกเขาค้นหาอินเทอร์เน็ตสำหรับแผนที่ทางภูมิศาสตร์ในระดับโลก แต่แทบจะไม่สามารถหาข้อมูลที่ต้องการได้ในเวลาอันสั้นและมีคุณภาพและ / หรือเอกสารที่เพียงพอ ฉันคิดว่าโดยเฉพาะอย่างยิ่งสำหรับผู้เริ่มต้นมันยากที่จะทราบว่าจะดาวน์โหลดข้อมูลที่ดีเพราะเว็บไซต์เหล่านี้มีเว็บไซต์และแหล่งข้อมูลมากเกินไปซึ่งบางแห่งนั้นให้บริการฟรีและที่อื่น ๆ ไม่ได้บางแห่งมีคุณภาพดีและที่อื่น ๆ ... และบ่อยครั้งที่พวกเขาทั้งหมดขาดเอกสารที่เหมาะสม ดังนั้นคำถามของฉันคือ: มีเว็บไซต์ใดที่รวบรวมข้อมูลเกี่ยวกับตำแหน่งที่จะหาฐานข้อมูลที่ดี (เช่นขอบเขตการปกครองเมืองแผนที่ทางกายภาพแผนที่บรรเทาทุกข์แหล่งน้ำพืชพืชดินและอื่น ๆ ) ในระดับโลกที่มีเอกสารที่เหมาะสม และคุณภาพของข้อมูลที่เชื่อถือได้ ? สำหรับฉันจุดเริ่มต้นที่ดีคือ Worldgrids.org ตรวจสอบที่นี่: http://worldgrids.org/doku.php ผู้คนสนใจดินควรพิจารณา: http://www.globalsoilmap.net/ บางเลเยอร์จาก FAO: http://www.fao.org/geonetwork/srv/en/main.home (ถ้าคุณไปที่พอร์ทัลตรวจสอบให้แน่ใจว่าได้ทำการค้นหาขั้นสูงแล้วคลิกข้อมูลที่ดาวน์โหลดได้เป็นตัวเลือกตัวกรอง)
9 data  geoportal 

4
วิธีการเปลี่ยน“ W” (อังกฤษ) เป็น“ O” (ฝรั่งเศส) บนทิศทางลูกศรทิศเหนือโดยใช้ ArcMAP 10.0
วิธีการเปลี่ยน "W" (อังกฤษ) เป็น "O" (ฝรั่งเศส) บนทิศทางลูกศรทิศเหนือโดยใช้ ArcMAP 10.0 ฉันพยายามแปลงเครื่องหมายลูกศรทิศเหนือเป็นกราฟิก แต่มันไม่ทำงาน

2
ผลลัพธ์ที่ผิดปกติสำหรับการทดสอบความเร็วการประมวลผลทางภูมิศาสตร์
ฉันสังเกตการทำงานผิดปกติด้วยสคริปต์การประมวลผล Python สคริปต์ (แนบ) ดำเนินการต่อไปนี้: ใช้เคอร์เซอร์ค้นหาเพื่อค้นหาโซน UTM ที่สอดคล้องกับคุณสมบัติรูปหลายเหลี่ยม สร้างวัตถุอ้างอิงเชิงพื้นที่โดยยึดตามผลลัพธ์ของเคอร์เซอร์ค้นหา แปลง. csv เป็นเลเยอร์คุณลักษณะแล้วไปยังคลาสคุณลักษณะจุด ฉันสังเกตเห็นเวลาการประมวลผลที่แตกต่างกันอย่างชัดเจนตามวิธีการเรียกใช้สคริปต์: การประมวลผลแบบ 32 บิตโดยใช้IDLE = 203 วินาที เครื่องมือประมวลผลเบื้องหน้า32 บิต = 91 วินาที เครื่องมือสคริปต์พื้นหลังการประมวลผล64 บิต = 206 วินาที เหตุใดสคริปต์นี้จึงทำงานแตกต่างกันไปตามเงื่อนไขข้างต้น แน่นอนว่าฉันไม่คาดหวังว่าเครื่องมือสคริปต์ 32 บิตจะทำงานในเบื้องหน้าว่าเร็วถึง 2X เท่าวิธีอื่น ๆ import arcpy, os, time ###IDLE Parameters ##fc = r'C:\path\to\polygon\fc\with\utm\zones\and\features' ##outws = r'C:\out\location' ##arcpy.env.workspace = …

1
พล็อตแบบอคติของ Mercator ในแผ่นพับ
ฉันได้รับแรงบันดาลใจจากภาพวิกิพีเดียนี้จากหน้าโปรเจคเตอเรเตอร์เพื่อแฮกใบปลิว แนวคิดก็คือให้เคอร์เซอร์ของคุณเคลื่อนที่ไปตามทวีปและจะได้รับการแก้ไขสำหรับการฉายภาพ ดู JSFiddle ต่อไปนี้สำหรับสถานะ sofar; http://jsfiddle.net/cantdutchthis/NrAEL/1/ ฉันเป็นคนใหม่ในโลกฉายและถึงแม้ว่าตัวอย่างจะใช้ได้ดีพอสำหรับละติจูด เมื่อฉันเปรียบเทียบequirectangularและMercator เงื้อมมือบนวิกิพีเดียฉันได้รับความประทับใจว่าอคติของเส้นโครงนั้นอยู่ที่ 'แกน y' เมื่อคุณเปรียบเทียบการฉายสองภาพนี้ ฉันได้รับความประทับใจว่าฉันไม่ได้แก้ไขลองจิจูดเนื่องจากรูปภาพแรกของวิกิพีเดีย ฉันต้องการสนับสนุนสิ่งนี้ แต่ไม่รู้ว่าจะทำอย่างไรดีที่สุด ในปัจจุบันวิธีที่ฉันสามารถแสดงอคติของการฉายภาพของ Mercator คือการเปลี่ยนพิกัดไปที่ผู้ชี้ขาดทุกครั้งที่เมาส์เคลื่อนที่ map.on("mousemove", function(d){ Object.keys(myLayer._layers).map(function(d){ myLayer.removeLayer( myLayer._layers[d] ) }) var plotCoords = []; // green is the coordinate array for the landmass var green = [ [-46.76373672, 82.62796021],... ] for ( i in …

1
การคำนวณระยะห่าง {น้อยที่สุด} ระหว่างรูปหลายเหลี่ยมใน R
ฉันได้คำนวณพื้นที่ผิวของการกระจายของสปีชีส์ (การรวมรูปหลายเหลี่ยมจากรูปร่างของไฟล์) แต่เนื่องจากพื้นที่นี้อาจประกอบด้วยรูปหลายเหลี่ยมที่ห่างไกลมากฉันจึงต้องการคำนวณการกระจายตัวของบางอย่าง สิ่งที่ฉันได้ทำไปแล้วคือการดึงเซนทรอยด์ของรูปหลายเหลี่ยมแต่ละอันคำนวณระยะห่างระหว่างพวกมันและใช้สิ่งเหล่านี้เพื่อคำนวณสัมประสิทธิ์การแปรผันตามตัวอย่างในตัวอย่างด้านล่าง require(sp) require(ggplot2) require(mapdata) require(gridExtra) require(scales) require(rgeos) require(spatstat) # Create the coordinates for 3 squares ls.coords <- list() ls.coords <- list() ls.coords[[1]] <- c(15.7, 42.3, # a list of coordinates 16.7, 42.3, 16.7, 41.6, 15.7, 41.6, 15.7, 42.3) ls.coords[[2]] <- ls.coords[[1]]+0.5 # use simple offset ls.coords[[3]] <- …

6
การตั้งค่าสิทธิ์ใช้งาน ArcGIS Desktop ให้ระดับต่ำกว่าสำหรับการทดสอบว่าสคริปต์ Python ยังคงทำงานอยู่หรือไม่
ฉันมีสคริปต์ Python ที่จะต้องมอบให้กับลูกค้า ขณะนี้เรากำลังประเมินระดับสิทธิ์ใช้งานที่ลูกค้าต้องการเพื่อใช้งานสคริปต์เพื่อวัตถุประสงค์ในการได้มาซึ่งซอฟต์แวร์ เราทุกคนมี ArcGIS 10.1 ใบอนุญาตขั้นสูงใน บริษัท ของเรา ฉันตรวจสอบเครื่องมือและส่วนขยายทั้งหมดที่ใช้ในสคริปต์กับความช่วยเหลือจากเว็บและพบว่าควรทำงานในระดับสิทธิ์ใช้งานมาตรฐาน มีวิธีที่ฉันสามารถทดสอบสคริปต์กับระดับสิทธิ์ใช้งานแบบมาตรฐานหรือไม่เมื่อเราไม่มีระดับสิทธิ์ใช้งานแบบมาตรฐานในหรือ บริษัท (เฉพาะระดับขั้นสูงเท่านั้น)

3
ค้นหาระเบียนที่ซ้ำกันในฟิลด์โดยใช้ ArcGIS for Desktop หรือไม่
ฉันกำลังมองหาระเบียนที่ซ้ำกันในไฟล์ dbf ตามคุณลักษณะที่เรียกว่า 'ID' ฉันมีไฟล์ dbf ต่าง ๆ จาก 500,000 เรคคอร์ดถึง 1.5 ล้านและฉันรู้ว่ามีโฮสต์ของการซ้ำซ้อน ฉันต้องการเพิ่มฟิลด์ 'ทำซ้ำ' ซึ่งระบุว่าใช่หรือไม่ใช่ (หรือ 1 หรือ 0 ใช้ได้) เมื่อมีแอตทริบิวต์ ID อยู่ที่อื่น การใช้สคริปต์ python ต่อไปนี้ใน Field Calculator ส่งคืน 1 สำหรับรายการที่ซ้ำกันและ 0 สำหรับรายการที่ไม่ซ้ำ uniqueList = [] def isDuplicate(inValue): if inValue in uniqueList: return 1 else: uniqueList.append(inValue) return 0 isDuplicate(!FIELD_NAME!) …

4
การแยก Linestrings บน dateline ด้วย OpenLayers
สองสามปีที่ผ่านมาฉันโพสต์บรรทัดวันที่สากลล้อมรอบและ @jdeolive แนะนำให้ฉันแยกคุณสมบัติที่ dateLine ดังนั้นฉันจึงพยายาม เมื่อฉันพยายามที่จะแยกการติดตามดาวเทียมของฉันกับsplitWithnullในวันเดือนปีที่ผมได้รับกลับมา ฉันรู้ว่าฉันแยกอย่างถูกต้องเพราะเมื่อฉันแยกสายกรีนวิชฉันจะได้รับผลลัพธ์ที่คาดหวัง มีใครรู้บ้างว่าฉันสามารถแยกLinestringอย่างเป็นโปรแกรมตามบรรทัดวันที่ด้วย OpenLayers ได้อย่างไร ฉันค้นหาโค้ดตัวอย่างถ้าคุณมี ฉันลองแล้วwrapDateLineแต่ดูเหมือนว่ามันจะไม่ทำงานบนเลเยอร์เวกเตอร์แม้ว่าเลเยอร์เวกเตอร์ของฉันจะเป็นแบบนี้: vectorLayer = new OpenLayers.Layer.Vector("GroundTracks", { renderers: ['Canvas', 'VML'], wrapDateLine: true}); // <-- shoud be wraping. นี่คือรหัสของฉัน: var features = []; var format = new OpenLayers.Format.WKT({ 'internalProjection': map.baseLayer.projection, 'externalProjection': prjGeographic }); var satTrack = format.read("LINESTRING (95.538611 13.286511, 94.730711 16.908947, …

3
ใช้การเปลี่ยนแปลงเดียวกันกับเอกสารแผนที่หลายรายการหรือไม่
ฉันมีเอกสารแผนที่หลายฉบับ (ประมาณ 30) ที่อ้างอิงไฟล์เดียวกันทั้งหมดและแสดงในลักษณะเดียวกัน ฉันสร้างพวกเขาโดยการตั้งค่าแผนที่เดียวที่ฉันต้องการจากนั้นใช้ "บันทึกเป็น" เพื่อสร้างแผนที่ใหม่จากนั้นปรับขอบเขตข้อมูลเฟรมในเค้าโครง แน่นอนว่าตอนนี้ฉันได้สร้างมันขึ้นมาแล้วฉันต้องทำการเปลี่ยนแปลงแบบเดียวกันกับพวกเขาทั้งหมด มีกระบวนการที่มีประสิทธิภาพมากกว่าการทำซ้ำขั้นตอนเดียวกันในเอกสารแต่ละฉบับด้วยตนเองหรือไม่? ถ้าไม่มีวิธีที่ดีกว่าที่ฉันสามารถจัดทำโครงการเพื่ออำนวยความสะดวกในการเปลี่ยนแปลงเช่นนี้หรือไม่? ฉันใช้ ArcMap 10.0

2
ติดตั้ง PostGIS และ TIGER Data ใน Ubuntu 12.04
มีใครบางคนที่สามารถเขียนบทสรุปสั้น ๆ ได้จนทำให้คนงี่เง่าไม่พอใจที่จะติดตั้ง postgis และโหลดข้อมูล Tiger ระดับชาติบน Ubuntu ฉันได้ลองใช้แนวทางสองสามอย่างคือhttp://wiki.bitnami.com/@api/deki/pages/302/pdfแต่ฉันไม่มีโชคมาก ฉันขอโทษสำหรับลักษณะสิ้นสุดของคำถามนี้

5
เพิ่มเลเยอร์แผนที่ย่อยแบบกำหนดเองโดยใช้ QGIS?
ฉันกำลังพยายามแสดงแผนที่พื้นหลังต่อไปนี้ใน QGIS 2.0: http://server.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer/tile/ $ {z} / $ {y} / $ {x} ในไคลเอนต์แผนที่เว็บที่กำหนดเองนี้ค่อนข้างง่าย: http://dev.openlayers.org/releases/OpenLayers-2.13.1/examples/xyz-esri.html ฉันพยายามใช้ "OpenLayers plugin" ใน QGIS แต่มีรายการแผนที่พื้นหลังที่กำหนดไว้ล่วงหน้าและฉันไม่สามารถเพิ่มเลเยอร์แผนที่แบบกำหนดเองของฉันเองได้ มีวิธีแก้ปัญหาง่าย ๆ (ไม่มีโปรแกรมใด ๆ ) ฉันจะแสดงเลเยอร์แผนที่แบบกำหนดเองใน QGIS ได้อย่างไร?

4
วิธีการสรุปคลาสคุณสมบัติจุด
ฉันมีฟีเจอร์คลาสพร้อมจุดสำหรับทุกๆ 25 ซม. - รวม 400,000 คะแนน ฉันต้องการลดความละเอียดนี้ให้เหลือเพียงหนึ่งจุดในทุกๆมิเตอร์ ฉันจะสั่งให้ ArcGIS Advanced (ArcInfo) ทำสิ่งนี้ได้อย่างไร ฉันไม่เห็นเครื่องมือที่ทำให้ผอมบางหรือเครื่องมือการวางนัยสำหรับคลาสคุณลักษณะของจุดและไม่ต้องการสร้างแรสเตอร์จากข้อมูลเพื่อทำการสุ่มใหม่

1
วิธีการกลับจุดยอดการสั่งซื้อในรูปหลายเหลี่ยม?
ฉันทำงานกับการเชื่อมต่อเชิงพื้นที่ของ Oracle ใน QGIS ซึ่งฉันกำลังเข้าถึงและแก้ไขเลเยอร์เวกเตอร์ ฉันพบว่าเมื่อฉันแก้ไขรูปทรงเรขาคณิตการจัดลำดับจุดสุดยอดจะถูกกลับรายการ (เป็นตามเข็มนาฬิกาในวงแหวนด้านนอก) ซึ่งจะถูกตั้งค่าสถานะเป็นข้อผิดพลาดใน oracle ฉันกำลังใช้ฟังก์ชั่นการรวมกัน ( http://www.qgis.org/api/classQgsGeometry.html ) ท่ามกลางคนอื่น ๆ ในเครื่องมือแก้ไขของฉันเอง แต่ฉันสังเกตว่าสิ่งนี้เกิดขึ้นกับเครื่องมือรูปหลายเหลี่ยมผสานดั้งเดิม ฉันคิดว่าการสั่งซื้อตามเข็มนาฬิกานี้เป็นค่าเริ่มต้นใน QGIS ตามลิงค์นี้: https://hub.qgis.org/issues/6283และสงสัยว่ามีวิธีที่จะย้อนกลับเป็นทวนเข็มนาฬิกาหรือไม่? (ควรมีงูหลาม)

4
การพิจารณาว่ามีจุดล้อมรอบโดยใช้การประมวลผลแบบแรสเตอร์หรือไม่
ฉันกำลังพยายามปรับปรุงกระบวนการเวกเตอร์ / หลามที่ยุ่งยากในขณะนี้สำหรับแบบจำลองความเป็นอันตรายตามธรรมชาติ ในขณะนี้เรามีสคริปต์ที่มีความยาวซึ่งสร้างเส้นระยะทาง / ทิศทางจากจุดที่กำหนดเพื่อพิจารณา: ประเภทของรูปหลายเหลี่ยมที่มันตัดกัน (เช่นป่าหญ้าป่าพรุ ฯลฯ ) ระยะทางถึงรูปหลายเหลี่ยมนั้น จำนวนเส้นเหล่านี้ตัดกันรูปหลายเหลี่ยมเพื่อกำหนดว่า 'ล้อมรอบ' เป็นเท่าใด มีส่วนร่วมมากขึ้น แต่นั่นคือส่วนสำคัญของมัน ฉันพยายามที่จะหาวิธีในการปรับปรุงและตอนนี้กำลังนิ่งงันในส่วนที่ 3 ความคิดคือการตรวจสอบว่าจุดที่ล้อมรอบด้วยรูปหลายเหลี่ยมอย่างสมบูรณ์ภายใน 200m ดังนั้นในภาพที่แนบมาของฉันฉันต้องการให้จุด A ถูกทำเครื่องหมายว่ามีความเสี่ยงสูงกว่าจุด B เนื่องจากล้อมรอบด้วยรูปหลายเหลี่ยมของฉัน สิ่งนี้ซ้ำไปซ้ำมาประมาณ 13 ล้านจุดดังนั้นจึงไม่ใช่งานเล็ก ๆ และฉันอยากมีพื้นผิวที่จะได้รับค่ามากกว่าการใช้งานสคริปต์ของเรา ฉันคิดว่าจะต้องมีการเปลี่ยนแปลงของเครื่องมืออุทกวิทยาหรือเส้นทางต้นทุนในการทำเช่นนี้ แต่ฉันไม่สามารถไปรอบ ๆ มันได้ ฉันจะไปเกี่ยวกับเรื่องนี้ได้อย่างไร

2
มีซอฟต์แวร์การจัดการ GUI ที่รับรู้เชิงพื้นที่สำหรับ PostgreSQL / PostGIS คืออะไร
ประสบการณ์ส่วนใหญ่ของฉันกับ PostgreSQL นั้นเป็น pgAdminIII และ psql แต่ฉันสนใจที่จะรู้ว่าคนอื่นใช้อะไร มี PostgreSQL เทียบเท่ากับ SQL Server Management Studio (SSMS) และความสามารถในการแสดงผลในรูปแบบที่ จำกัด ผลลัพธ์ที่มีรูปทรงเรขาคณิต (ฟรีหรือจ่ายเงิน) หรือไม่ หรือคนส่วนใหญ่เพียงเรียกใช้ไคลเอนต์ GIS ที่ด้านข้างเพื่อจุดประสงค์นี้เนื่องจากคำถามนี้ดูเหมือนจะบ่งบอกถึง: เครื่องมือ GUI สำหรับ PostgreSQL / PostGIS ? ฉันดูในแคตตาล็อกซอฟต์แวร์ PostgreSQL แต่ฉันไม่พบสิ่งใด (นอกเหนือจากลิงก์ที่เสียหาย)

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