जीपीएस पटरियों से पॉलीलाइन-आधारित "हीटमैप" बनाना?


30

इस सर्दी मैं एक जीपीएस का उपयोग करके अपने डाउनहिल स्कीइंग / स्नोबोर्डिंग को ट्रैक करने की योजना बना रहा हूं। मेरी अधिकांश सवारी एक ही रिसॉर्ट में होगी। मैं एक "हीटमैप" बनाने में सक्षम होना चाहूंगा जो किसी दिए गए क्षेत्र में मेरे द्वारा किए गए रनों की मात्रा को दर्शाता है। जैसा कि मैं अपने डेटाबेस में अधिक से अधिक जीपीएस निशान जोड़ता हूं, मेरा लक्ष्य सबसे अधिक यात्रा वाले क्षेत्रों के एक प्रकार के रैखिक हीटमैप को देखना होगा। डाउनहिल स्कीइंग की प्रकृति को देखते हुए, आप उम्मीद करेंगे कि चेरिल चेयरलिफ्ट लाइनें "सबसे गर्म" होंगी क्योंकि यह केवल एक ही स्थान पर बार-बार देखी जाएगी।

यह देखते हुए कि 1) मेरा ट्रैक हर बार एक जैसा नहीं होगा और 2) एक "रन" का अनुसरण करने वाला क्षेत्र कुछ सौ फीट चौड़ा हो सकता है, एक प्रकार बनाने के लिए इस "रैखिक" डेटा का विश्लेषण करने का सबसे अच्छा तरीका क्या हो सकता है हीटमैप का? मेरे विचार लाइनों को बफ़र करने के लिए थे, फिर एक प्रकार की वेन आरेख चीज़ को प्राप्त करने के लिए पोलियों को काटना। मेरी प्राथमिकता ओपन-सोर्स तकनीकों का उपयोग करना है। मुझे QGIS और PostGIS लोड और उपलब्ध हैं।

अद्यतन : @ blah238 की प्रतिक्रिया के संबंध में, मैं कुछ ऐसा सोच रहा था जो एक क्षेत्र के माध्यम से पास ("रन") की संख्या "एकत्र" करने में सक्षम हो, और फिर गिनती का प्रतीक हो। वैचारिक रूप से, यह आर्कगिस " कलेक्ट इवेंट्स " (लेकिन लाइनों के लिए, अंक नहीं) या डुअल लाइन्स टू सेंटरलाइन (लेकिन कई लाइन के लिए एक ही क्षेत्र में) के समान होगा।

एक समान अवधारणा का एक अधिक दृश्य उदाहरण एक ट्रैफ़िक-प्रवाह मानचित्र हो सकता है, जहाँ अत्यधिक भीड़भाड़ वाले क्षेत्र "अति-यात्रा" स्की रन / क्षेत्रों के बराबर होंगे:

गूगल ट्रैफिक मैप

मैंने निम्नलिखित प्रश्न पढ़े हैं, जो कुछ विचार दे सकते हैं, लेकिन वे वास्तव में संबोधित नहीं करते हैं जिन्हें मैं पूरा करने की कोशिश कर रहा हूं:

क्लस्टरिंग ट्रैजेक्ट्रीज़ ((x, y) पॉइंट्स का GPS डेटा) और डेटा माइनिंग करता है

जीपीएस मार्गों के साथ त्रुटि का प्रबंधन (सैद्धांतिक ढांचा?)


यह मानते हुए कि आप GPX डेटा का उपयोग कर रहे हैं, इसे बस अंतराल पर लेट / लॉन्ग रीडिंग लेना चाहिए, इसलिए यह पहले से ही पॉइंट फीचर्स में होना चाहिए। क्या आप उस पर हीटमैप का उपयोग नहीं कर पाएंगे? या आप GPX कंपेटिबल डिवाइस का उपयोग नहीं कर रहे हैं ??
रोमा

आह, एर। मैंने जो चाहा था, उसे गलत समझा .. नेवरमाइंड।
21

@RomaH, वास्तव में, आप बहुत अच्छी तरह से लाइनों का उपयोग करने के बजाय हीटमैप उत्पन्न करने के लिए बिंदुओं का उपयोग करने के अपने विचार के साथ कुछ पर हो सकते हैं। मैंने पहले स्रोत बिंदुओं का उपयोग करने पर विचार नहीं किया था, इसलिए यह एक ऐसी चीज है जिसकी मैं निश्चित रूप से जांच करूंगा।
रयानडाल्टन

आप एक फ़ील्ड के साथ काम कर रहे हैं, जहां एक सड़क के रूप में अच्छी तरह से परिभाषित किनारों हैं। यदि आप एक लाइन मॉडल करना चाहते हैं, तो आप कई पॉली ओवरले, जॉइन कर सकते हैं, और विरासत में मिले मानों के साथ लाइन मैप बनाने के लिए पॉइंट 2 टोन प्लगइन का उपयोग कर सकते हैं। लेकिन फिर आपको यह तय करने की जरूरत है कि एक नई लाइन सुविधा को सही ठहराने के लिए किसी को कितनी दूर स्की करने की जरूरत है। मेरे लिए व्यक्तिगत रूप से मैं हीटमैप समाधान से खुश रहूंगा, लेकिन फिर, मुझे आपकी आवश्यकताओं के बारे में पता नहीं है।
रोमा

मैं इस सवाल पर अड़ गया जो अनिवार्य रूप से एक ही काम को पूरा करने का एक बहुत अच्छा तरीका है, लेकिन हीट मैप बनाने के लिए जीपीएस ट्रैक पॉइंट्स का उपयोग करना।
रयानडाल्टन

जवाबों:


17

मैंने जियोटूल / जियोसेवर में इस पर कुछ काम किया है, जो पॉइंट के अलावा अन्य ज्यामितीयों का समर्थन करने के लिए हीटमैप रेंडरिंग परिवर्तन का विस्तार कर रहा है।

पिज्जा हीटमैप देता है

यह अभी तक समाप्त नहीं हुआ है, लेकिन आप GitHub पर मेरे भंडार से सुविधा शाखा प्राप्त कर सकते हैं ।

स्क्रीनशॉट जीपीएस ट्रैक्स का है जब मैंने पिज्जा डिलीवरी ड्राइवर के रूप में काम किया था।


यह अभी भी वेक्टर ज्यामिति का उत्पादन नहीं कर रहा है, लेकिन यह उच्च मूल्य देने के लिए ओवरलैप इकट्ठा कर रहा है।
स्मिथ

किसी भी विचार कैसे सिर्फ पोस्टगिस के साथ इस प्रभाव को प्राप्त करने के लिए? या qgis?
क्रिस्मस एर्क्स

15

यहाँ वास्तव में उपयोग कर रहा करने के लिए एक अच्छा ट्यूटोरियल है MapBox और TileMill :

स्क्रीनशॉट


1
सहमत, यह अवधारणा लगभग समान है, और आसानी से किसी भी जीआईएस में किया जा सकता है। लेकिन यह मूल रूप से सुझाव दे रहा है "बस अपने सभी पटरियों को हल्के हरे रंग के बफर के साथ लाल करें" और वे नक्शे पर बाहर खड़े होंगे? दृश्य प्रभाव के लिए, मैं निश्चित रूप से काम करूंगा। मुझे लगता है कि मैं मूल रूप से कुछ और "विश्लेषणात्मक" के लिए प्रयास करने के बारे में सोच रहा था जो इस उदाहरण में "रन" की "गिनती" दिखा सकता है। मैं इसे खत्म करता रहूँगा।
रयानडाल्टन

@ blah238 मैं ऐसा ही उदाहरण देख रहा था ... बहुत बहुत धन्यवाद !!
सुनील

1
@ blah238, इस पर थोड़ी देर सोचने के बाद, आपने मेरे प्रारंभिक प्रश्न का बहुत ही मान्य उत्तर दिया। मुझे अपने विचारों पर अधिक स्पष्ट होना चाहिए था। आपके उत्तर के लिए धन्यवाद, और मैंने अपने प्रश्न को अधिक सटीक रूप से प्रतिबिंबित किया है कि मैं क्या हासिल करने की कोशिश कर रहा था। मैं मदद की सराहना करता हूं।
रयानडाल्टन

5

यहाँ मेरा सरल तरीका है:

  1. umap में एक नया नक्शा बनाएं: http://umap.openstreetmap.fr/en
  2. आयात डेटा पर क्लिक करें आपके पास मौजूद सभी gpx फाइलों का चयन करें और उन्हें मानचित्र में अपलोड करें (आप सभी को एक ही बार में आयात कर सकते हैं)
  3. मानचित्र सेटिंग संपादित करें> डिफ़ॉल्ट गुण, अपारदर्शिता 0.25, वजन 10 चुनें।

उपरोक्त तीन चरणों में 5 मिनट का समय लगेगा और यहाँ परिणाम है: यहां छवि विवरण दर्ज करें


3

यहाँ QGIS पर मेरा दृष्टिकोण है। यह बस मार्गों के एक सेट के लिए था, और मैं यह पहचानना चाहता था कि किन मार्गों से गुजरने वाले बस मार्गों का घनत्व सबसे अधिक है।

  • मेरी लाइनों को बिंदुओं में परिवर्तित करने के लिए Qchainage प्लगइन का उपयोग किया। विभिन्न परिदृश्यों का परीक्षण किया जब तक कि मैंने प्रति पंक्ति (1,500 प्रति पंक्ति, और लाइनें लगभग 9kms थीं) बहुत सारे अंक उत्पन्न किए।
  • कगिस ने स्टाइल टैब में अंतर्निहित हीटमैप सिम्बोलोजी को लागू किया है। परत गुण> शैली> हीटमैप
  • त्रिज्या और अधिकतम मूल्य के साथ खेलते हैं। सर्वश्रेष्ठ रेंडरिंग गुणवत्ता का चयन करना सुनिश्चित करें।
  • एक नया रंग रैंप बनाया (निरंतर चुनें) दूसरी तरफ से काले और किसी अन्य उज्ज्वल रंग से शुरू होता है।

और वॉयला।

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


2

मुझे लगता है कि यह काफी पुरानी पोस्ट है, हालांकि, मैं इसी तरह के शोध कर रहा था। मैंने एक बहुत ही सरल मॉडल / कार्य प्रवाह विकसित किया है जो आर्कजीआईएस (संभवतः क्यूजीआईएस में इसे पूरा कर सकता है, लेकिन मैंने अभी तक इसे वहां लागू नहीं किया है)।

यदि आपके पास विशेष रूप से एक GPX या TCX फ़ाइल है (कोई भी बिंदु फ़ाइल काम करती है), तो इसे केवल एक्सेल में खोला जा सकता है, फिर एक CSV में परिवर्तित किया जा सकता है और ArcGIS में लाया जाता है। Points to Lineटूल का उपयोग करते हुए , आप समय के अनुसार पॉइंट्स को छाँटकर CSV से GPS पॉइंट्स को ट्रैजेक्ट्रीज़ में परिवर्तित कर देते हैं (आप उन्हें विशिष्ट पहचानकर्ता का उपयोग करके समूह भी बना सकते हैं, जो इस स्थिति में रिज़ॉर्ट, रूट या ईवेंट की विशिष्ट तिथि के अनुसार हो सकता है) - जैसे Day1, 2, आदि)। यह एक सिंगल पॉलीलाइन लेयर बनाएगा (जब तक कि आप उन्हें यूनिक आईडी द्वारा ग्रुप न करें)। फिर आप उस Split Line at Verticesटूल का उपयोग करते हैं जो प्रत्येक क्रमिक बिंदु के बीच लाइन सेगमेंट बनाता है। वहां से, आप उस Line Densityटूल का उपयोग करते हैं जो एक सेल के माध्यम से गुजरने वाली लाइनों की संख्या को निर्दिष्ट सेल आकार और खोज त्रिज्या देता है, और एक रेखापुंज को आउटपुट करता है। इस रेखापुंज का प्रतीक ऊष्मा मानचित्र के रूप में किया जा सकता है।

मेरे पास है, और इसे अक्सर लागू करना जारी रखता है, और नीचे एक नमूना परिणाम भी शामिल है:

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


यह वास्तव में एक दिलचस्प तकनीक की तरह लग रहा है। मैंने इस विचार को कभी पूरा नहीं किया, इसलिए मैं इसकी और जांच करूंगा। एक पुराने प्रश्न का उत्तर देने के लिए धन्यवाद!
रयानडाल्टन

कोई बात नहीं! यह आर्क टूलबॉक्स से सिर्फ उन तीन उपकरणों का उपयोग करके एक बहुत ही सरल मॉडल है। वैकल्पिक रूप से, आप इसे आगे भी दो उपकरणों के लिए बस का उपयोग कर को आसान बनाने में कर सकता है Track Intervals to Lineऔर Line Densityउपकरणों
एंड्रयू-रयान

1

हमारे इस उपयोग में PGRout का उपयोग करके छात्रों को उनके विद्यालय में भेजना शामिल है।

एक व्यक्तिगत मार्ग के परिणाम उनके मूल में नोड्स का एक सेट है (जो संबंधित किनारों से वैकल्पिक रूप से जुड़कर लाइनों में बदल जाते हैं)।

यदि आप एक ही स्कूल में कई छात्रों को रूट करते हैं, तो नोड्स के आउटपुट संग्रह को QGIS में हीटमैप रेंडरर का उपयोग करके प्रदर्शित किया जा सकता है, जो स्कूल के लिए एकत्रित मार्गों के 'हॉटस्पॉट' दिखाता है (नीचे देखें)।

इन मानचित्रों का उपयोग उन क्षेत्रों को सूचित करने के लिए किया गया था जिन्हें आगे के बुनियादी ढांचे जैसे कि क्रॉसिंग, सिग्नल, संकेत, आदि के लिए लक्षित किया जाना चाहिए।

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


छवि के लिए धन्यवाद साझा करना, मुझे यह पसंद है। मैं देखने के लिए लाइनों के बजाय GPX वर्टेक्स को संसाधित करने की कोशिश करूँगा, अगर हॉटस्पॉट्स छोटे के भीतर काम करते हैं
रयानडाल्टन

0

एक ग्रैटिकुलर ग्रिडवर्क बनाएं, जीपीएसडाटा को शेपफाइल्स में बदलें, लाइनों को पॉलीगोनाइज़ करें, टेबल से एक्स, वाई पॉइंट डेटा निकालें, इस बिंदु पर मानक अभ्यास का उपयोग करके सतह का घनत्व या हीट मैप बनाएं। फिर आप रेखीय वेक्टर डेटा के साथ विलय कर सकते हैं एक रेखापुंज प्रदर्शन में पिक्सेल मान पाने के लिए या आगे संख्यात्मक प्रसंस्करण के लिए।


0

अधिकांश लोग (अपने आप सहित) एक GPX फ़ाइल को देखते हैं और इसे पदों (बिंदुओं) के अनुक्रम के रूप में सोचते हैं, जबकि इसे पूरी तरह से लाइन सेगमेंट के अनुक्रम के रूप में देखा जा सकता है ।

आपकी समस्या निर्माण में एक "हीट मैप" शामिल है ताकि आप नेत्रहीन अपने प्रक्षेपवक्रों का निरीक्षण कर सकें, इसलिए जटिल नंबरक्रंचिंग भाग को सीधे एक प्लॉटिंग इंजन पर भेजकर इसे छोड़ने का एक सरल तरीका है।

जब आप कहते हैं "लाइनों को बफ़र करें", तो वह लाइन मोटाई होगी। जब आप कहते हैं कि "पास इकट्ठा करें" का मतलब होगा पारदर्शी लाइनों के साथ और अधिक से अधिक साजिश रचना, इस प्रकार "अधिक से अधिक रंग" का निर्माण करना।

इसलिए, मेरा सुझाव है कि आप प्रत्येक प्रक्षेपवक्र को एक ही पॉलीलाइन के रूप में मोटाई के साथ प्लॉट कर सकते हैं कि कुछ ओवरलैप है (यह ज़ूम पर निर्भर करता है, इसलिए आप पिक्सेल के बजाय मैप की दूरी में मोटाई सेट करना चाहते हैं), और काफी कम अपारदर्शिता के साथ , कहते हैं, 0.05, काले रंग में।

यह महत्वपूर्ण है कि प्रत्येक सेगमेंट को प्लॉट न किया जाए, क्योंकि यदि आप ऐसा करते हैं, तो उनके अतिरेक ओवरलैप हो जाएंगे, उनकी अस्पष्टता दोगुनी हो जाएगी और मजबूत रंग का "डॉट" बन जाएगा।

अंत में, आप एक ग्रेस्केल छवि प्राप्त करेंगे, जिस पर आप अपनी पसंद के कॉलोरामैप को लागू कर सकते हैं।

मैं शायद इसे पायथन / काहिरा का उपयोग करके करूँगा, लेकिन पायथन / मैटलोट्लिब करेगा, और एचटीएमएल / कैनवस या एचटीएमएल / एसवीजी (या प्रोग्राममैटिक एसवीजी) निश्चित रूप से करेगा।

अंतिम परिणाम केवल आपके आउटपुट मीडिया के संकल्प पर निर्भर करेगा।


0

मुझे पता है कि यह काफी पुराना प्रश्न है, लेकिन जैसा कि यह पोस्ट इस विषय के लिए शीर्ष खोज परिणामों में से एक है, मैंने सोचा कि मैं आर्कगिस में पॉलीलाइन हीट मैप्स बनाने के लिए एक वर्कफ़्लो का लिंक पोस्ट करूंगा जो इस प्रश्न का उत्तर देता है, जैसा कि वर्तमान में इस पोस्ट में ArcGIS के लिए कोई समाधान नहीं है।

https://luke-webber.github.io/polyline-heatmap/

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.