ओपन सोर्स टूल्स का उपयोग करके शेपफाइल से पॉलीगन्स को कैसे भंग किया जाता है?


10

अपनी वर्तमान परियोजना में मैं एक देश के प्रत्येक प्रशासनिक क्षेत्रों के लिए कुछ मूल्यों का प्रतिनिधित्व करने वाले मानचित्र पर डेटा की कल्पना कर रहा हूं। मुझे इस देश का एक आकार दिया गया है, जिसे मैं PolyMaps के उपयोग के लिए GeoJSON में परिवर्तित कर रहा हूं। अब मुझे कई क्षेत्रों को बड़े क्षेत्रों में बदलने की आवश्यकता है, क्योंकि कुछ छोटे भागों के लिए कोई डेटा नहीं है, लेकिन बड़े लोगों के लिए समग्र डेटा का अधिग्रहण किया जा सकता है। उन समूहों को पूर्वनिर्धारित किया जाता है (जैसे ए + बी + सी = डी), इसलिए मुझे लगा कि एक गुच्छेदार आकृति का उत्पादन करना आसान होगा और बाद में इसे जियोसन में बदल दिया जाएगा।

लेकिन मैं ऐसे क्लस्टर कैसे बना सकता हूं, अधिमानतः स्वचालित और ओपन-सोर्स टूल के साथ? किसी अन्य समझदार तरीके का भी स्वागत है।

जवाबों:


5

आप हमेशा अपने शेपफाइल को खोलने के लिए QGIS जैसे एक ओपन-सोर्स टूल का उपयोग कर सकते हैं और बिल्ट-इन "मर्ज सिलेक्टेड फीचर्स" टूल का उपयोग करके मर्ज कर सकते हैं (बस फीचर्स का चयन करें, मर्ज पर क्लिक करें, नए मर्ज किए गए फीचर को इनहेरिट करने के लिए सेलेक्ट करें)।

यदि हम सैकड़ों या हजारों मर्जों के बारे में बात कर रहे हैं तो यह निश्चित रूप से बहुत मायने नहीं रखता है। मैं खुद दूसरे दिन सोच रहा था कि क्या QGIS में "विशेषता द्वारा" विशेषताओं का विलय संभव है?

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


सामान्य तौर पर, अच्छी सलाह, और अगर यह सब मैन्युअल काम के लिए नीचे आता है, तो मैं किसी ऐसे व्यक्ति को ढूंढूंगा जो मेरे लिए QGIS के साथ उन शेपफाइल्स का निर्माण करेगा, जैसा आपने वर्णित किया है। हालाँकि, मैं उन समूहों को परिभाषित करने में सक्षम होना चाहता हूं (जैसे NUTS कोड के माध्यम से: FR413 और FR411 को _FRX1 नामक किसी चीज़ में मर्ज करें) और फिर एक स्क्रिप्ट चलाएं जो उन संकुल आकृति को उत्पन्न करेगा। मैं त्रुटियों को ठीक करना या GUI टूल के ओवरहेड के बिना फास्ट-ट्रैक किए गए परिवर्तनों को समायोजित करना चाहता हूं। यह पूरी तरह से संभव है कि उन समूहों को किसी दिन अंत-उपयोगकर्ताओं द्वारा परिभाषित किया जाएगा, इसलिए मुझे थोड़ा लचीलापन चाहिए।
निकोलाई प्रोकोसेंको

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

पूरी तरह से संभव है, मैं जीआईएस सभी चीजों में पूरी तरह से नौसिखिया हूं। मैं QGIS स्क्रिप्टिंग में देखूंगा, धन्यवाद।
निकोलाई प्रोकोसचेंको

2

कम मैनुअल काम के लिए, आप स्पैटियालाइट पर एक नज़र डाल सकते हैं। आप उदाहरण के लिए आसानी से आकार का आयात कर सकते हैं

spatialite> .loadshp ~/maps/areas areas iso-8859-15
spatialite> UPDATE areas SET Geometry = SetSrid(Geometry,4326);
spatialite> SELECT RecoverGeometryColumn('areas','Geometry',4326,'POLYGON',2);

फिर घुलने वाले हिस्से के लिए:

I

यहां आपको जिस फ़ंक्शन की आवश्यकता है वह GUnION () है। आप दूसरी तालिका में अपने "क्लस्टर" को परिभाषित करना चाह सकते हैं। फिर आप अंतिम Union_table बनाने के लिए क्लस्टर और क्षेत्र तालिका में शामिल हो सकते हैं और ग्रुप BY के साथ GUnION () का उपयोग कर सकते हैं।

फिर आप .dpshp का उपयोग करके आकार में निर्यात कर सकते हैं

spatialite> .dumpshp union_table Geometry new_shapefile iso-8859-15 POLYGON

यदि आपको जियोजन की आवश्यकता है, तो आप फ़ाइल को अब रूपांतरित कर सकते हैं।

आप उदाहरण के लिए पाइथन में एक छोटी स्क्रिप्ट लिख सकते हैं जो इन सभी भारों को जोड़ता है, जुड़ता है और डंप करता है।


बहुत होनहार लग रहा है, मैं इसके साथ प्रयोग करेंगे! धन्यवाद! आप क्या समझा सकते हैं UPDATEऔर SELECTलाइनों है?
निकोलाई प्रोकोसचेंको
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.