GG फ़ाइलों को QGIS में कैसे आयात करें और एक एकल आकार में मर्ज करें?


11

मैं QGIS ऐप स्ट्रवा का उपयोग करके अपने द्वारा रिकॉर्ड की गई सभी बाइक राइड्स का अपना 'हीटमैप' बनाने के लिए देख रहा हूं।

मेरे पास 450 से अधिक व्यक्तिगत gpx फाइलें हैं और वे ट्रैक पॉइंट लेयर्स को एक सिंगल शेपफाइल में मर्ज करना चाहते हैं ताकि मैं उन्हें एक बहुभुज लेयर में शामिल कर सकूं और join_count द्वारा सिंबल कर सकूं जैसा कि इस उदाहरण में देखा गया है:

यहां छवि विवरण दर्ज करें

मेरी कुछ gpx फाइलों में फ़ाइल नाम में 'राइड' और अन्य 'रन' शामिल हैं, मैं केवल उन '' राइड '' वाले फाइल को फिल्टर करना चाहूंगा।

मैं QGIS का उपयोग करके इसे कुशलता से कैसे प्राप्त कर सकता हूं?

जवाबों:


13

Ogr2ogr कमांड लाइन टूल का उपयोग करें, जो QGIS के साथ वितरित किया गया है। विंडोज में, QGIS प्रोग्राम समूह से OSGeo4W शेल खोलें और दर्ज करें

for %p in (path_to_gpx_files\*ride*.gpx) do ogr2ogr path_for_output\gpx.shp -append %p track_points -fieldTypeToString DateTime

यूनिक्स बैश शेल में बराबर कमांड होगी

for file in path_to_gpx_files/*ride*.gpx; do ogr2ogr path_for_output/gpx.shp -append "${file}" track_points -fieldTypeToString DateTime; done

सुनिश्चित करें कि आउटपुट फ़ाइल (gpx.shp) पहले मौजूद नहीं है, फिर ogr2ogr इसमें "सवारी" के साथ सभी gpx फाइलों में से एक एकल आकृति का उत्पादन करेगा। Http://www.gdal.org/drv_gpx.html पर ogr gpx ड्राइवर के बारे में कुछ नोट हैं ।


3

मुझे पता है कि यह देर हो चुकी है लेकिन यह एक दिन दूसरों की मदद कर सकता है। बैच जीपीएस आयातक नामक एक QGIS प्लगइन है जो मैंने इस उत्तर में अधिक समझाया ।

नवीनतम संस्करण उपसर्ग और प्रत्यय पाठ का उपयोग करके फ़ाइलों को फ़िल्टर कर सकता है। बैच जीपीएस आयातक

मुझे उम्मीद है यह मदद करेगा।


2

आप एक समय में कई GPX फ़ाइलों को आयात कर सकते हैं, हालांकि आपको डेटा परत के लिए प्रत्येक और प्रत्येक फ़ाइल के लिए संकेत दिया जाएगा। 400 से अधिक निशान के साथ यह मजेदार नहीं होगा।

आप ogr2ogr को देखना चाह सकते हैं । यह जियो फाइल रूपांतरणों का स्विस-आर्मी-नाइफ है, यह लगभग किसी भी जियोफॉर्म को किसी अन्य संगत (वेक्टर / रैस्टर) जियोफोर्मेट में बदल देगा।

एक ogr2ogr कॉल कुछ इस तरह दिखता है

ogr2ogr -f "ESRI Shapefile" example.shp example.gpx

आप इसे प्रोग्रामिक रूप से कह सकते हैं (जैसे कि एक पाइथन स्क्रिप्ट, .bat फ़ाइल या बैश स्क्रिप्ट) से प्रत्येक राइड * .gpx को पुनरावृत्त करने के लिए और उदाहरण के लिए, इसे शेपफाइल में बदलें।

यह कहने के बाद कि, मैं OpenStreetMap से डाउनलोड किए गए यादृच्छिक gpx निशान के एक जोड़े पर काम करने के लिए इसे प्राप्त नहीं कर सका (ogrinfo उन्हें या तो पसंद नहीं था, हालांकि QGIS ने उन्हें लोड किया था)। लेकिन मैं दूसरे स्रोत से GPX फाइलें खोलने में सक्षम था।

दौड़ने की कोशिश करो

ogrinfo example.gpx tracks

और देखें कि क्या आपको कोई उपयोगी आउटपुट मिलता है। यदि आपको ड्राइवरों की सूची मिलती है, तो यह विफल है।

आपका लाभ भिन्न हो सकता है, यह एक जाने लायक है।

ध्यान दें कि प्रत्येक आकृति का आकार अपनी स्वयं की निर्देशिका के साथ समाप्त हो जाएगा, इसलिए यदि आप कोड लिखने की परेशानी नहीं चाहते हैं, तो आप इसके बजाय CSV की कोशिश कर सकते हैं .. इस ब्लॉग पोस्ट को देखें

मर्जिंग करने के लिए, आप (कोड का उपयोग करके) सभी शेपफाइल्स को एक ही डायरेक्टरी में कॉपी कर सकते हैं, फिर वेक्टर> डेटा मैनेजमेंट टूल्स> एक शेपफाइल्स को एक में मर्ज करें

यदि आप उस हेक्सबिन शैली के शौकीन हैं जिसका आपने चित्रण किया है, तो आप MMQgis प्लगइन को देखना पसंद कर सकते हैं । यह हेक्सागोनल ग्रिड बनाने की अनुमति देता है, जिसे आप 'बहुभुज में अंक' विश्लेषण करने के लिए उपयोग कर सकते हैं।


4
विंडोज में मैंने QGIS प्रोग्राम ग्रुप से OSGeo4W शेल खोला और कोशिश की for %p in (C:\Data\*.gpx) do ogr2ogr gpx.shp -append %p track_points -fieldTypeToString DateTime। gpx.shp पहले मौजूद नहीं होना चाहिए, फिर ogr2ogr एक एकल आकृति का उत्पादन करता है।
Redoute

1
आपको इसे @Redoute के उत्तर के रूप में लिखना चाहिए!
एलेक्स लीथ

@Redoute हाँ क्या आप पूर्ण उत्तर के रूप में लिख सकते हैं? धन्यवाद
MFBawls

1
लिनक्स उपयोगकर्ताओं के लिए @Redoute द्वारा उत्कृष्ट सुझाव का अनुवाद, यह एक आकर्षण की तरह काम करता है ...#!/bin/bash for i in $( ls ./*.gpx ); do ogr2ogr gpx.shp -append $i track_points -fieldTypeToString DateTime done
स्टीवन Kay
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.