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

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

2
ฉันจะคำนวณการแบกระหว่างสองจุดใน PostGIS ได้อย่างไร
ฉันจะค้นหาตำแหน่งระหว่างสองจุดใน PostGIS ได้อย่างไร โปรดระบุในคำตอบของคุณไม่ว่าจะเป็นวิธีการผลิตตลับลูกปืนบนทรงกลมหรือตลับลูกปืนระนาบ

4
การสร้างบัฟเฟอร์ด้านเดียวหรือเส้นคู่ขนานใน PostGIS
ฉันกำลังมองหาวิธีในการสร้างสิ่งที่เรียกว่าบัฟเฟอร์ด้านเดียวหรือเส้นคู่ขนานใน PostGIS ตัวอย่าง: 1. บัฟเฟอร์, 2. ด้านเดียว, 3. ทั้งสองด้าน ฉันได้พบการสนทนาบางอย่างในรายชื่อผู้รับจดหมายตั้งแต่ปี 2009และข้อมูลที่นำมาใช้ใน GEOSแต่ไม่มีอะไรเกี่ยวกับสถานะ PostGIS ปัจจุบัน ในกรณีที่ฟังก์ชั่นยังไม่ได้ใช้งานคุณรู้จักการแก้ไขปัญหาใด ๆ หรือไม่? เป็นไปได้หรือไม่ที่จะตัดบัฟเฟอร์ด้านหนึ่งด้านใดด้านหนึ่ง?

3
การประมาณบรรทัดใน PostGIS
ฉันพยายามที่จะคาดการณ์จากส่วนของเส้นเพื่อหาจุดบนบรรทัด แต่หนึ่งในสามของ 'ย้อนกลับ' คือพยายามค้นหาจุดจุดที่newกำหนดAและBด้านล่าง: รับบรรทัดฉันสามารถแก้ไขเพื่อให้ได้ตำแหน่งที่เปอร์เซ็นต์ใด ๆ ตาม: =# select st_line_interpolate_point( st_makeline('0101000020E6100000300DC347C49418C03EE8D9ACFAA44A40', '0101000020E6100000FB743C66A03218C0CDCCCCCCCC7C4A40'), 0.333); 0101000020E6100000ED45B41D537718C069C6A2E9EC984A40 ฉันพยายามป้อนจำนวนลบเพื่อหาจุดตามเส้นในทิศทางตรงกันข้าม แต่นั่นล้มเหลวเนื่องจากอาร์กิวเมนต์การแก้ไขต้องอยู่ในช่วง [0, 1] ฉันคิดเกี่ยวกับการปรับขนาดบรรทัดแรก แต่ไม่ได้ใช้จุดศูนย์กลางของเส้นเป็นจุดเริ่มต้นดังนั้นจึงไม่มีประโยชน์สำหรับจุดประสงค์ของฉัน

2
วิธีทั่วไปในการแสดงข้อมูลภูมิศาสตร์จาก Postgis บนแผ่นพับคืออะไร
ตัวอย่างเช่นในฐานข้อมูลของฉันฉันมีบางจุดที่มีพิกัดทางภูมิศาสตร์ ฉันต้องการแสดงมันในเลเยอร์ Leaflet JS ฉันควรใช้เครื่องมือใด อาจมีบาง API ...
18 postgis  leaflet 

2
วิธีนำเข้าไฟล์ KML ที่มีข้อมูลที่กำหนดเองไปยังฐานข้อมูล Postgres / PostGIS ได้อย่างไร
โดยกำหนดเองฉันไม่ได้หมายถึงโครงสร้างที่แตกต่างของไฟล์ KML แต่ใน<description></description>ส่วนฉันมีข้อมูลที่มีแท็ก HTML ประเภทนี้: <?xml version="1.0" encoding="UTF-8"?> <kml xmlns="http://www.opengis.net/kml/2.2"> <Document> <Placemark> <name>New York City</name> <description><![CDATA[ <table> <tr><td colspan='2'>Attributes</td></tr> <tr><td>CITY_ID</td><td>150335</td></tr> <tr><td>POPULATION</td><td>8244910</td></tr> <tr><td>AREA</td><td>468.48</td></tr> </table>]]> </description> <Point> <coordinates>40.712964,-74.003886,0</coordinates> </Point> </Placemark> </Document> </kml> ฉันต้องการนำเข้าข้อมูลทั้งหมดนี้อย่างง่ายดายสำหรับแต่ละหมุดไปยังตารางที่มีคอลัมน์ที่เกี่ยวข้องในฐานข้อมูลวิธีการทำเช่นนี้?
18 postgis  kml  ogr2ogr 

1
PostGIS เลือกโดย lat / กล่อง bounding ยาว
ฉันมี minLat, minLong, maxLat และ maxLong จากกล่องที่วาดบนแผนที่ ตอนนี้ข้อความค้นหาของฉันเพื่อให้ได้คะแนนทั้งหมดในกล่องมีลักษณะดังนี้: SELECT * FROM geomTable WHERE (longitude BETWEEN minLon AND maxLon) AND (latitude BETWEEN minLat AND maxLat) ฉันต้องการใช้คอลัมน์รูปทรงเรขาคณิตแทนคอลัมน์ lat / long เพื่อให้ได้ผลลัพธ์ ฉันลองใช้คำค้นหานี้: SELECT * FROM mytable WHERE mytable.geom && ST_MakeEnvelope(minLon, minLat, maxLon, maxLat, 4326); จากโพสต์นี้: เลือกกล่องขอบโดยใช้โพสต์จิสแต่ไม่พบผลลัพธ์ ไม่มีใครมีตัวอย่างของวิธีการเลือกจุดทั้งหมดที่อยู่ในกล่องที่สร้างขึ้นโดยนาทีและสูงสุด lat / long โดยใช้รูปทรงเรขาคณิตใน postgis?
18 postgis 

2
แปลงจากประเภทข้อมูลภูมิศาสตร์เป็นเรขาคณิตใน PostGIS หรือไม่
ฉันมีรูปร่างไฟล์ที่มีประเภทภูมิศาสตร์ ฉันสามารถแปลงด้วยเครื่องมืออย่าง shp2pgsql หรือมีฟังก์ชั่น postgis ทำเช่นนั้นได้หรือไม่?
18 postgis 

1
วิธีการตั้งค่าดัชนีสำหรับเคียวรีระยะทาง PostGIS อย่างถูกต้องเป็นอย่างไร
ฉันกำลังสร้างโปรแกรมประยุกต์ที่ควรจะแบบสอบถามและกลับทุกRecordในตารางที่เป็นแล้วกิโลเมตรห่างจากX และตำแหน่งของจะถูกกำหนดจากข้อมูลที่จัดทำโดย Google Geocode APIPointXRecordsPointX(long/lat) ฉันใหม่กับ PostGIS หลังจากการวิจัยอย่างรวดเร็วฉันพบคำถามนี้ คำตอบน่าจะเป็นไปตาม: SELECT * FROM your_table WHERE ST_Distance_Sphere(the_geom, ST_MakePoint(your_lon,your_lat)) <= radius_mi * 1609.34 ปัญหาคือ: แม้ว่าฉันเพิ่งเริ่มใช้ GIS เท่านั้นเมื่อฉันดูข้อความค้นหาข้างต้นฉันไม่สามารถจินตนาการได้ว่าวิธีการนี้สามารถใช้ดัชนีได้อย่างไร มีการเรียกใช้ฟังก์ชัน 2 ครั้ง Recordผมคิดว่าตารางการสแกนหาทุก ฉันต้องการที่จะผิด :) คำถาม: PostGIS มีประเภทดัชนีใด ๆ ที่สามารถสร้างข้อความค้นหาด้านบนได้หรือไม่ ถ้าไม่วิธีการที่แนะนำจะทำในสิ่งที่ฉันต้องการคืออะไร

1
Postgis - การแปลงชนิดข้อมูล 'geometry_dump' เป็นประเภท 'geometry'
ฉันกำลังทำงานกับชุดข้อมูลของขอบเขตคุณสมบัติที่มี ST_Union () ทำงานอยู่ดังนั้นรูปหลายเหลี่ยมทั้งหมดจะปรากฏเป็นรูปหลายเหลี่ยมหลายเหลี่ยมในหนึ่งแถวของตาราง ฉันต้องการแยกสิ่งเหล่านี้ออกเพื่อให้ได้แถว / รูปหลายเหลี่ยมแยกสำหรับแต่ละรูปร่าง ฉันได้ลองใช้งาน ST_Dump () กับสิ่งนี้และดูเหมือนว่าจะแยกโพลีกอนออกจากชุดข้อมูล แต่ฉันไม่สามารถดูได้อีกใน GIS (ฉันกำลังใช้ QGIS) ประเภทข้อมูลสำหรับคอลัมน์นี้บอกว่ามันเป็น 'geometry_dump' และฉันคิดว่านี่เป็นเหตุผลที่ฉันไม่สามารถมองเห็นได้ เมื่อฉันเข้าถึงฐานข้อมูล Postgres จาก QGIS ตารางใหม่นี้จะแสดงรายการอยู่ใต้หัวเรื่องของชุดข้อมูลที่ไม่มีรูปเรขาคณิต ไม่มีใครรู้ว่ามีบางสิ่งที่ฉันสามารถทำได้เพื่อแปลง 'geometry_dump' เป็น 'geometry' หรือไม่?

1
สามารถจัดกลุ่มตามเรขาคณิตใน PostGIS ได้ไหม
ตกลงกับเรขาคณิตหรือไม่? เราทำการนับจำนวนจุดด้วยรูปหลายเหลี่ยมซึ่งเกี่ยวข้องกับการตัดข้อมูลก่อนเพื่อนับอินสแตนซ์ของนักเรียน โดยขอบเขตโรงเรียนกลุ่มบล็อก ฯลฯ : SELECT n.nbhd_id , count(*) AS count_burglaries FROM denver.crime AS c JOIN denver.neighborhoods AS n ON ST_Intersects(c.geom, n.geom) WHERE c.offense_ty LIKE 'BURG%' GROUP BY n.nbhd_id ขั้นตอนที่สองคือการตัดคำในแบบสอบถามย่อยเพื่อเข้าร่วมเรขาคณิตจากตารางรูปหลายเหลี่ยมกลับไปที่แบบสอบถามแบบนับ: SELECT count.* , n.nbhd_name , n.geom FROM ( SELECT n.nbhd_id , count(*) AS count_burglaries FROM denver.crime AS c JOIN denver.neighborhoods …

1
ฟังก์ชัน PostGIS จะจัดการกับบัฟเฟอร์และที่จัดเก็บข้อมูลภายนอกได้อย่างไร
ฉันเห็นรายการฟังก์ชันใหม่ที่เพิ่มมากขึ้นเรื่อย ๆ ใน PostGIS ซึ่งบางส่วนเกี่ยวข้องGEOS(เช่นST_ClusterKMeans) ฟังก์ชั่นบางอย่าง (เช่นที่อยู่ในpgrouting) พึ่งพาห้องสมุดอื่น ๆ (เช่นBGL) ความประทับใจของฉันคือไลบรารีพื้นฐานเหล่านี้จำนวนมาก (บ่อยครั้งใน C / C ++) ไม่รองรับการจัดการบัฟเฟอร์ระหว่างหน่วยความจำและหน่วยความจำรอง / ที่เก็บ / ดิสก์ ดังนั้นฟังก์ชั่น PostGIS ด้านบนของพวกเขาทำงานบนชุดข้อมูลขนาดใหญ่ที่ไม่สามารถเก็บไว้ในหน่วยความจำทางกายภาพ (หรือเสมือน)? ถ้าเป็นเช่นนั้นความสามารถในการจัดการบัฟเฟอร์เหล่านี้มาจากไหน (จากมุมมองของการนำไปใช้)?

3
ฉันควรคาดหวังว่า PostGIS จะจัดรูปแบบที่อยู่ในรูปแบบที่ดีได้อย่างรวดเร็วเพียงใด
ฉันควรคาดหวังว่า PostGIS จะจัดรูปแบบที่อยู่ในรูปแบบที่ดีได้อย่างรวดเร็วเพียงใด ฉันได้ติดตั้ง PostgreSQL 9.3.7 และ PostGIS 2.1.7 แล้วให้โหลดข้อมูลระดับประเทศและข้อมูลสถานะทั้งหมด แต่พบว่าการเข้ารหัสภูมิศาสตร์จะช้ากว่าที่ฉันคาดไว้มาก ฉันตั้งความคาดหวังไว้สูงเกินไปหรือไม่? ฉันได้รับรหัสเฉลี่ย 3 geocodes ต่อวินาที ฉันต้องทำประมาณ 5 ล้านและฉันไม่ต้องการรอสามสัปดาห์ นี่เป็นเครื่องเสมือนจริงสำหรับการประมวลผลเมทริกซ์ R ยักษ์และฉันติดตั้งฐานข้อมูลนี้ไว้ที่ด้านข้างเพื่อให้การกำหนดค่าอาจดูโง่เล็กน้อย หากการเปลี่ยนแปลงที่สำคัญในการกำหนดค่าของ VM จะช่วยได้ฉันสามารถเปลี่ยนการกำหนดค่าได้ รายละเอียดฮาร์ดแวร์ หน่วยความจำ: โปรเซสเซอร์ 65GB: 6 lscpuให้สิ่งนี้กับฉัน: # lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 6 On-line CPU(s) list: 0-5 Thread(s) …

1
ค้นหา OSM สำหรับชายหาดทั้งหมดที่หันหน้าไปทางทิศตะวันตกใช่ไหม - ต้องการ QGIS
ฉันต้องการระบุชายหาดทั้งหมดบนโลกนี้ (หรือเซตย่อยของมัน) ที่หันหน้าไปทางทิศตะวันตก (+/- 20-30 องศา) ความคิดของฉันคือการใช้ OSM เป็นแหล่งข้อมูล การแยกรูปหลายเหลี่ยมทั้งหมดที่มีแท็ก "natural = beach" ให้ชุดข้อมูล / shapefile ของทุกพื้นที่ที่มีสถานะเป็นชายหาด จนถึงตอนนี้ดีมาก ฉันรู้ว่าฉันสามารถใช้ข้อมูลชายฝั่ง (เช่นจาก OSM หรือ Natural Earth) เพื่อระบุใบหน้าของชายหาด การบัฟเฟอร์รูปร่างชายหาดเพื่อแก้ไขความไม่ตรงกันเล็กน้อยและตัดสิ่งเหล่านี้กับแนวชายฝั่งควรให้ข้อมูลกับฉันว่าด้านใดของรูปร่างที่หันหน้าไปทางน้ำ การใช้ค่าสูงสุด / นาทีของจุดตัดกันทั้งหมดควรให้แนวคิดเกี่ยวกับการแบก (90 องศา +/- 20-30 องศาก็โอเค ... ) และนั่นคือสิ่งที่ฉันหลงทาง ... เครื่องมือที่ฉันต้องการจะเป็น QGIS แต่ PostGIS ก็ใช้ได้เช่นกัน มีใครบ้างไหมที่มีความคิดที่ฉลาดในการไขปริศนานี้?

4
ส่งออกรูปร่างไฟล์ไปยังฐานข้อมูล PostGIS ใน QGIS [ปิด]
ปิด คำถามนี้ต้องการรายละเอียดหรือความคมชัด ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ เพิ่มรายละเอียดและชี้แจงปัญหาโดยแก้ไขโพสต์นี้ ปิดเมื่อปีที่แล้ว ฉันจะส่งออก vectorfilefile ไปยังฐานข้อมูล PostGIS ได้อย่างไร ฉันกำลังขอให้ส่งออกรูปแบบใด

2
PostGIS Geometry Query ส่งคืน“ ข้อผิดพลาด: การดำเนินการกับรูปแบบ SRID ผสม” สำหรับค่าบางค่าเท่านั้น
ฉันมีตาราง PostGIS พร้อมคอลัมน์รูปทรงเรขาคณิตสองคอลัมน์ทั้งสองกำหนดด้วย SRID 4326 ฉันสามารถแทรกลงในตารางโดยไม่มีปัญหาโดยใช้INSERTคำสั่งต่อไปนี้(โดยที่lngและlatเป็นค่าที่ส่งผ่านโดยทางโปรแกรม): INSERT INTO pad_meta ( uuid, created, updated, name, origin, radius, area, expiry, creator ) VALUES ( $1, now(), now(), $2, ST_GeomFromText('POINT(lng, lat)', 4326), $3, ST_Buffer(ST_GeomFromText('POINT(lng, lat)', 4326), $4), $5, $6 ) แต่เมื่อผมสอบถามสี่แยกโดยใช้ ST_Intersects, ขึ้นอยู่กับมูลค่าของจุดERROR: Operation on mixed SRID geometriesที่ฉันได้รับ ตัวอย่างเช่นแบบสอบถามนี้ใช้งานได้: SELECT * FROM pad_meta …
17 postgis  srid 

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