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

PostGIS เป็นส่วนเสริมสำหรับฐานข้อมูลเชิงสัมพันธ์เชิงวัตถุของ PostgreSQL ที่เพิ่มการรองรับวัตถุทางภูมิศาสตร์

4
จุดเชื่อมต่อ (ป้ายรถเมล์) ซึ่งไม่อยู่บนเส้น (LINESTRING) ไปยังเครือข่าย
ฉันต้องเชื่อมต่อป้ายรถเมล์ (คะแนน) กับเลเยอร์เครือข่าย (ข้อมูล OSM) ป้ายรถเมล์เหล่านี้ไม่ได้อยู่บนเส้นตรง (ดูภาพหน้าจอ) และไม่ควรย้ายตำแหน่งของพวกเขา ฉันใช้ PostGIS, pgrouting และ QGIS และเครือข่ายสามารถกำหนดเส้นทางได้ด้วยแหล่งที่มาและคอลัมน์เป้าหมายเป็นต้น ส่วนใหญ่ฉันต้องการที่จะทำสองสิ่งหลังจากนั้น: การหาระยะทางระหว่างบัสหยุดโดยใช้การวิเคราะห์เส้นทางที่สั้นที่สุด การสร้าง isochrones ด้วยระยะทางเดินจากป้ายรถเมล์โดยใช้เครือข่าย OSM เพื่อให้ได้ค่าที่แน่นอนจำเป็นต้องมีการกำหนดเส้นทาง 'เริ่มต้น' และ 'หยุด' ใกล้กับป้ายรถเมล์ ในหลายกรณีโหนดที่ใกล้เคียงที่สุดจะอยู่ไกลเกินกว่าจะรับค่าที่แน่นอนได้ แต่ไม่ควรมีการกำหนดเส้นทางไปยังตำแหน่งจุดที่แท้จริงของป้ายรถเมล์ ในตัวอย่างของฉันในภาพคุณสามารถดูว่าการกำหนดเส้นทางระหว่างหยุดควรมีลักษณะอย่างไร มีความเป็นไปได้ที่จะแทรกโหนดใหม่โดยอัตโนมัติในเครือข่าย (LINESTRING) ซึ่งอยู่ใกล้กับป้ายรถเมล์มากที่สุดหรือเป็นไปได้หรือไม่ที่จะเริ่มต้นการกำหนดเส้นทางใน 'จุดจำลอง' ที่ตั้งค่าไว้สำหรับแบบสอบถาม (คล้ายกับถนน) ปลั๊กอินกราฟใน QGIS ทำ)?

1
สไตล์เลเยอร์ QGIS / PostGIS
ฉันสร้างปลั๊กอินเพื่อขอข้อมูลรับรองการเข้าสู่ฐานข้อมูล เมื่อเข้าสู่ระบบปลั๊กอินกำลังโหลดเลเยอร์บางอย่างจากฐานข้อมูล ในฐานข้อมูลมีทั้งผู้ดูแลระบบและผู้ใช้ "ปกติ" ฉันบันทึกสองสไตล์ลงในฐานข้อมูลจาก UI เป็นสไตล์เริ่มต้นสำหรับเลเยอร์ของพวกเขาตามลำดับ (ดูเหมือนว่าคุณต้องมีสิทธิ์ผู้ดูแลระบบ DB เพื่อให้สามารถบันทึกได้) เมื่อฉันบันทึกสไตล์ไปยังฐานข้อมูลฉันไม่สามารถดูตำแหน่งที่เก็บไว้เช่นฉันจะไม่เห็นตารางใหม่ (ฉันคาดว่าสไตล์จะถูกบันทึกไว้ในตาราง) เรียกใช้ QGIS และปลั๊กอินอีกครั้ง (ในฐานะผู้ใช้ผู้ดูแลระบบ) สไตล์เลเยอร์จะถูกโหลดโดยอัตโนมัติ แต่การรัน QGIS และปลั๊กอินอีกครั้ง (ในฐานะผู้ใช้ทั่วไป) จะไม่ถูกโหลดโดยอัตโนมัติ ฉันพยายามโหลดสไตล์จาก DB (จาก GUI) แต่ไม่มีการโหลดสไตล์ คำถามสองข้อ สไตล์เลเยอร์เก็บไว้ในฐานข้อมูลอย่างไร มีวิธีในการโหลดสไตล์เลเยอร์โดยไม่มีสิทธิ์ผู้ดูแลฐานข้อมูลหรือไม่?
9 qgis  postgis  layers  style 

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

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

1
ฉันจะตัดค่า Z ใน PostGIS ได้อย่างไร
ฉันจะกำจัดมิติ Z ใน PostGIS ได้อย่างไร โดยเฉพาะฉันมีบางอย่างMultiPolygonZที่ฉันต้องการคัดลอกลงในตารางอื่นเป็นMultiPolygons ฉันไม่สนใจค่า Z - โอเคที่จะทิ้งพวกมันไป ต้องมีวิธีที่ง่าย แต่ฉันไม่สามารถหาฟังก์ชั่นที่ทำเช่นนี้ได้ ... คำแนะนำใด ๆ ที่ได้รับการชื่นชมอย่างมาก!

1
ประสิทธิภาพในการคำนวณสถิติแรสเตอร์ใน PostGIS
ฉันพยายามคำนวณสถิติแรสเตอร์ (ต่ำสุด, สูงสุด, ค่าเฉลี่ย) สำหรับแต่ละรูปหลายเหลี่ยมในเลเยอร์เวกเตอร์โดยใช้ PostgreSQL / PostGIS คำตอบ GIS.SE นี้อธิบายวิธีการทำเช่นนี้โดยการคำนวณจุดตัดระหว่างรูปหลายเหลี่ยมและแรสเตอร์แล้วคำนวณค่าเฉลี่ยถ่วงน้ำหนัก: https://gis.stackexchange.com/a/19858/12420 ฉันใช้ข้อความค้นหาต่อไปนี้ (ซึ่งdemเป็นแรสเตอร์topo_area_su_regionของฉันคือเวกเตอร์ของฉันและtoidเป็นรหัสเฉพาะ: SELECT toid, Min((gv).val) As MinElevation, Max((gv).val) As MaxElevation, Sum(ST_Area((gv).geom) * (gv).val) / Sum(ST_Area((gv).geom)) as MeanElevation FROM (SELECT toid, ST_Intersection(rast, geom) AS gv FROM topo_area_su_region,dem WHERE ST_Intersects(rast, geom)) foo GROUP BY toid ORDER BY toid; ใช้งานได้ แต่ช้าเกินไป …

2
บริการรถบัสป้อน
ก่อนอื่นมีพื้นหลังเล็กน้อย ฉันทำงานให้กับ บริษัท ขนส่งในภูมิภาค เรากำลังทำการ "วินิจฉัย" เกี่ยวกับบริการรถบัสของเรา เราต้องการทราบว่าสัดส่วนของผู้ใช้ของเราสามารถขึ้นรถบัสเพื่อไปที่สถานีรถไฟแทนที่จะนั่งรถของพวกเขาได้ ผ่านไปหลายครั้ง แต่ตอนนี้เราใช้ gtfs เป็นแหล่งข้อมูลหลักของเราดังนั้นเราจึงต้องทบทวนวิธีการของเราใหม่ หากต้องการได้รับการพิจารณาให้เป็น "การให้อาหาร" รถไฟเส้นทางรถเมล์ต้องหยุดภายในระยะทางที่กำหนดจากสถานีรถไฟ (บัฟเฟอร์สีแดง) การซิงโครไนซ์กับบริการรถไฟนั้นสำคัญมากเพราะถ้ารถบัสของคุณมาถึงสถานีรถไฟครึ่งชั่วโมงก่อนรถไฟเวลาที่รอจะนานเกินไปและคุณจะต้องนอนอีก 20 นาทีในตอนเช้าและขึ้นรถของคุณ สมมติว่าคุณใช้สาย A (สีฟ้า) ที่ป้าย 12 คุณก้าวออกจากรถที่ป้าย 13 รถบัสมาถึงที่ป้าย 13 ซึ่งเป็นป้ายหยุดเพื่อไปที่สถานีรถไฟ # 1 5 นาทีก่อนรถไฟ นั่นเป็นสิ่งที่ดีมาก นั่นหมายความว่าทุกคนที่ใช้เส้นทางรถเมล์ที่ป้าย 1-13 รวมถึง 5 นาทีก่อนรถไฟ จากนั้นรถไฟจะผ่านบริเวณที่มีประชากรหนาแน่นมากโดยมีโรงเรียนและทางแยกถูกบังคับให้ลดความเร็วลงมาก ในขณะเดียวกันรถบัสจะไปรับผู้โดยสารที่ป้ายที่ 14 ถึง 17 และมาถึงที่สถานีรถไฟ # 2 10 นาทีก่อนรถไฟ ผู้โดยสารนั่งรถบัสที่ป้าย …

1
Python พร้อม GDAL และ PostGIS แทน ArcGIS
ไม่กี่ครั้งที่ผ่านมาฉันทำงานกับภาพถ่ายดาวเทียมพื้นผิวอุณหภูมิพื้นผิวประจำวันของพื้นที่ที่มีขนาดของอลาสก้า ฉันต้องประมวลผลภาพประมาณหนึ่งพันภาพ ฉันดาวน์โหลดพวกมัน, โมเสส, ฉาย, ตัดกับขอบเขตของไฟล์, แยกออกมาจากแรสเตอร์ที่ถูกตัดและวางแผนวิธีในกราฟอุณหภูมิเวลา กราฟเวลาอุณหภูมิคือผลลัพธ์สุดท้าย ฉันทำสิ่งเหล่านี้ทั้งหมดใน ArcGIS และแม้ว่าฉันจะสร้างสคริปต์ ArcPy ซึ่งช่วยให้การทำงานเป็นส่วนหนึ่งของงานโดยอัตโนมัติ ตอนนี้ฉันต้องการสร้างโปรแกรมที่ทำสิ่งเดียวกัน แต่ 100% โดยอัตโนมัติ ฉันแค่ต้องการที่จะป้อนค่าพิกัดของมุมเข้าไปในโปรแกรมเพื่อกำหนดพื้นที่ที่น่าสนใจและรับเอาต์พุตสุดท้ายที่สร้างขึ้นซึ่งเป็นกราฟอุณหภูมิ - เวลา คุณคิดว่าสิ่งนี้เป็นไปได้หรือไม่ที่ใช้ Python กับ GDAL ไลบรารี่และ PostGIS เป็นแหล่งข้อมูลแรสเตอร์?


2
การโหลดแบตช์หลายไฟล์อัตโนมัติเป็น PostGIS?
ฉันมีไฟล์ GPX 50+ ที่ฉันต้องการ "batch load" ลงในฐานข้อมูล PostGIS ข้อมูล track_points ทั้งหมดจะถูกโหลดลงในตาราง "track_points" (ที่มีฟิลด์ GPS ทั่วไปเช่น lat, long, ระดับความสูง, เวลา ฯลฯ ) และข้อมูล track จะถูกโหลดลงในตารางเส้นรูปทรงเรขาคณิต "track" ที่คล้ายกันออกแบบอย่างเหมาะสม ฉันต้องการทำให้กระบวนการนี้เป็นแบบอัตโนมัติเพื่อที่ว่าเมื่อฉันได้ 50 ปีขึ้นไปฉันจะไม่ต้องป้อนข้อมูลลงในฐานข้อมูล ฉันชอบใช้ Python ในการเขียนสคริปต์กระบวนการเหล่านี้เป็นการส่วนตัว แต่ยินดีให้คำแนะนำใด ๆ กระบวนการคิดทั่วไปของฉันคือ: รับรายการไฟล์ GPX เพื่อดำเนินการ (ง่ายพอผ่านเครื่องมือ Python มาตรฐาน) วนรอบแต่ละไฟล์ GPX และแยก / แปลงข้อมูลที่จำเป็นในรูปแบบ PostGIS ใส่ข้อมูล GPS ลงใน …


2
วิธีค้นหาเมืองที่ใกล้ที่สุดสำหรับจุดที่น่าสนใจในฐานข้อมูล OpenStreetMap / PostGIS
ฉันสนใจที่จะค้นหาข้อมูลเพิ่มเติมสำหรับ POI ในฐานข้อมูล OSM ขณะนี้ฉันสามารถใช้ SQL ต่อไปนี้เพื่อรับชื่อ + long + lat สำหรับ POI ทั้งหมด SELECT name, x(transform(way, 4326)) AS lon, y(transform(way, 4326)) AS lat FROM planet_osm_point WHERE tourism='museum' UNION SELECT name, x(centroid(transform(way, 4326))) AS lon, y(centroid(transform(way, 4326))) AS lat FROM planet_osm_polygon WHERE tourism='museum' ฉันต้องการมีชื่อของเมือง / เมืองที่ใกล้ที่สุดหรือเมือง / เมืองที่ POI ตั้งอยู่

3
PostGIS ข้อผิดพลาด: ไม่สามารถโหลดห้องสมุด“ /usr/lib/postgresql91/lib64/postgis-2.0.so”
ระบบปฏิบัติการคือ openSUSE 12.1, PostgreSQL - 9.1, PostGIS - 2.0 Postgre / PostGIS ถูกติดตั้งจาก Application: Geo repository หลังจากอัพเดตล่าสุดเมื่อฉันพยายามเชื่อมต่อกับฐานข้อมูลของฉันฉันได้รับข้อผิดพลาดต่อไปนี้: ERROR: could not load library "/usr/lib/postgresql91/lib64/postgis-2.0.so": /usr/lib/postgresql91/lib64/postgis-2.0.so: undefined symbol: pj_get_spheroid_defn ฉันค้นหาเว็บเพื่อหาข้อผิดพลาดนี้ ( hint-1 , hint-2 ) และดูเหมือนว่าอาจมีบางอย่างที่เกี่ยวข้องกับ ld.so.config (หรือคำสั่ง ldconfig) แต่ฉันไม่สามารถหาสิ่งที่ฉันต้องทำในกรณีของฉัน

2
การออกแบบที่ดีที่สุดสำหรับต้นแบบ Open Source Python / PostGIS
ฉันกำลังเขียนเว็บแอปพลิเคชั่นที่เน้นข้อมูลที่ส่งผ่าน apache คำถามของฉันเกี่ยวกับวิธีจัดการการประมวลผลที่ดีที่สุดเนื่องจากมีหลายตัวเลือก ฉันมี OpenLayers / JQuery / Javascript, PostGIS / Postgresql (พร้อม pgsql), python / psycopg2, php ฐานข้อมูลมีแถวประมาณ 3 ล้านแถวและต้นแบบปัจจุบันทำงานดังนี้: ผู้ใช้คลิกที่จุดบนหน้าต่าง OpenLayers พิกัดถูกส่งเป็นการร้องขอ AJAX ไปยังฟังก์ชัน python บนเซิร์ฟเวอร์ ขณะนี้ใบสมัครของฉันไม่มีสัญชาติ psycopg2 ของ Python ใช้เพื่อเรียกโพรซีเดอร์ที่เก็บไว้ pgsql และชุดค่า WKT ที่ยอดเยี่ยม (และฟิลด์ข้อมูล) จะถูกส่งกลับไปยังโมดูลหลาม ฟิลด์ข้อมูลใช้เพื่อจัดหมวดหมู่เรคคอร์ด WKT ในไพ ธ อนดังนี้: ค่า WKT ทั้งหมดถูกจัดหมวดหมู่เป็นหนึ่งใน 5 กลุ่ม ประมาณ …

1
วิธีดูแรสเตอร์ 155 MB ที่จัดเก็บใน PostGIS
ฉันใช้คำสั่งต่อไปนี้เพื่อโหลดแรสเตอร์ลงในฐานข้อมูล postgres: raster2pgsql -I -C -e -Y -F -s 3086 -I -C -M myraster.tif myraster -F -t 30x30 | psql -U postgres -d database -h localhost -p 5432 myraster.tifคือ 155M เมื่อฉันพยายามใช้ปลั๊กอินแรสเตอร์ใน QGIS มันใช้เวลาโหลดนานมาก (15-20 นาที) ฉันไม่แน่ใจว่ามีอะไรที่ฉันสามารถทำได้เพื่อเร่งความเร็วนี้หรือหากมีวิธีอื่นในการรับชม rasters ทั้งหมดที่ฉันต้องการจะทำคือการดูแรสเตอร์อย่างรวดเร็วและตรวจสอบว่าสอดคล้องกับข้อมูลเวกเตอร์ที่เก็บไว้ในฐานข้อมูล (ข้อมูลเวกเตอร์แสดงในทางตรงกันข้ามอย่างรวดเร็ว) ในขณะนี้ QGIS จะหยุดทำงานและเมื่อมันแสดงแรสเตอร์ เพียงแสดงสี่เหลี่ยมสีดำและเปลี่ยน colorcale เป็นไปไม่ได้เนื่องจากความจริงที่ว่าการโต้ตอบใด ๆ ทำให้โปรแกรมหยุดทำงาน ฉันไม่คุ้นเคยกับรายละเอียดปลีกย่อยที่เกี่ยวข้องกับการโหลดแรสเตอร์ดังนั้นอาจมีการตั้งค่าสถานะและอาร์กิวเมนต์ต่าง ๆ ที่ฉันควรใช้ …

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