आर्कजी डेस्कटॉप का उपयोग करके एक्स दूरी के भीतर एन अंक के समूहों को खोजना?


12

हमने क्लस्टर विश्लेषण के दो तरीके आजमाए हैं:

... लेकिन न तो हमारे विनिर्देशन को पूरा करता है, जिसमें ये 3 पैरामीटर हैं:

  • प्वाइंट सुविधाओं का एक सेट
  • N एक क्लस्टर के भीतर इंगित करता है
  • में देखने के लिए एक्स डिस्टेंस बैंड

उदाहरण के लिए "मुझे उन बिंदुओं को ढूंढें जहां प्रत्येक क्लस्टर में 50 मीटर के भीतर 10 अंक हैं" या उस प्रभाव के लिए कुछ।

आर्कजीआईएस 10 में दो उपकरण हैं जो मैंने ऊपर लिंक किए हैं लेकिन न तो क्लस्टर भाग के भीतर एन बिंदुओं को संबोधित करते हैं।

क्या आर्कजीआईएस में अन्य उपकरणों के साथ हमारी आवश्यकताओं को पूरा किया जा सकता है? क्या मैं क्लस्टर विश्लेषण को एक विशेष क्लस्टरिंग प्रकार के रूप में जाना जाता हूं?

हमारे पास एक अन्य एप्लिकेशन में इसका एक संस्करण था, लेकिन मैं वास्तव में आर्कजीआईएस के भीतर टूल का उपयोग करना चाहता था।


"मेरी जानकारी के बिना क्लाइंट से वादा किया गया है ... मुझे आपका दर्द महसूस हो रहा है।" क्या एक अभिलेखीय समाधान स्वीकार्य होगा?
Kirk Kendkendall

क्या गुच्छों का निर्माण करना संभव नहीं होगा और फिर उन मानदंडों को पूरा करना होगा जो आपके मानदंडों को पूरा नहीं करते हैं? यह कहना है (और मैं इस विश्लेषण में अनुभव की कमी के कारण पूछता हूं), क्या क्लस्टर बदल सकते हैं यदि उन्हें विश्लेषण से पहले यह तीसरा मानदंड दिया गया था?
नाथनस

@ किर्क कुइकेन्डल। आर्कोबजेक्ट्स संभव नहीं हो सकता है क्योंकि इसे आर्कगिस 10 सर्वर के माध्यम से जियोप्रोसेसिंग सेवा के रूप में उजागर किया जाना चाहिए।
हाथ

क्या क्लस्टर को एक सर्कल पर आधारित होना चाहिए, या क्या यह आयताकार हो सकता है। निर्देशांक से एक हैश बनाना जैसे कि सभी बिंदुओं के लिए हैश कोड जो एक ही 50x50 बॉक्स में हैं वही आसान है।
किर्क कुएकेन्डल

@ कर्क - मुझे लगता है कि एक सर्कल होना चाहिए।
हाथ

जवाबों:


10

बफ़र टूल का उपयोग करके पॉइंट्स को एक सहिष्णुता के लिए बफर करें, प्रत्येक क्लस्टर के लिए सिंगल पॉलीगॉन बनाने के लिए भंग करें और फिर क्लस्टर में पॉइंट्स की संख्या को गिनने के लिए जॉइन का उपयोग करें।

फिर अपने मापदंडों को लागू करने के लिए क्लस्टर के क्षेत्र और अंकों की संख्या के बीच के अनुपात का उपयोग करें।


+1 यह दृष्टिकोण काम करना चाहिए, लेकिन मैं यह नहीं देखता कि क्षेत्र समाधान में कहां आता है।
whuber

क्षेत्र / गिनती एक क्लस्टर के भीतर घनत्व का एक माप देता है। यह उन बिंदुओं की रैखिक जंजीरों को खत्म करने में मदद करेगा जिन्हें गुच्छों के रूप में नहीं माना जाना चाहिए।
मैथ्यू स्नेप

2
ठीक है, लेकिन समस्या कथन की आवश्यकता नहीं है। यह केवल "50 मीटर के भीतर 10 अंक" के लिए पूछता है, जैसे। यदि आप 50/2 = 25 मीटर तक बफ़र करते हैं, तो कोई भी स्थान जहां 10 या अधिक ओवरलैप्स हैं, ऐसे क्लस्टर के केंद्र के रूप में योग्य हैं। किया हुआ!
whuber

जब आप 'ज्वाइन' करते हैं, तो क्या आप का मतलब है कि एक स्थानिक जुड़ाव है।
हाथ

2

यह बहुत कठिनाई के बिना ArcObjects का उपयोग करके पूरा किया जा सकता है।

एक maptopology बनाएँ और इसमें पॉइंट फीचरक्लास जोड़ें। अपने क्लस्टर की दूरी (50) के आधार पर क्लस्टर्टोलरेंस सेट करें, और कैश का निर्माण करें

Maptopology.cache.nodes में प्रत्येक नोड के माध्यम से लूप । यदि ITopologyNode.Parents.Count> 10 तो आपको जो करना है वह करें।

मैंने एक कस्टम लेयर के लिए कुछ ऐसा ही किया है जो प्रत्येक क्लस्टर बिंदु को एक प्रतीक के साथ खींचता है जिसका रंग क्लस्टर में बिंदु सुविधाओं की संख्या पर आधारित है। मेमोरी में कैश होने के बाद से प्रदर्शन स्वीकार्य था - कैश का पुनर्निर्माण महंगा हिस्सा है।

यहाँ पोस्ट के समान कोड ।


क्या यह अजगर में संभव होगा?
हाथ

मैं नहीं सोच रहा हूँ। ऐसा नहीं है कि arcobjects sdk से परिचित है और इसे उपयोग करने के लिए लाइसेंस की आवश्यकताओं के बारे में पूरी तरह सुनिश्चित नहीं है।
हाथ

2

पहले बिंदु पर जाने की कोशिश करें, फिर एक पुनरावर्ती फ़ंक्शन का निर्माण करें, जो दूरी के भीतर बिंदुओं की जांच करता है, और उस पर उसी ऑपरेशन को peforms करता है, जो दूरी के भीतर बिंदुओं की तलाश करता है, और उस पर समान संचालन करता है, आदि।

मैंने सिर्फ एक समान मुद्दे को हल किया है, जिसमें मुझे एक निश्चित खंड के अनुरूप बिंदुओं का एक समूह ढूंढना था; मैंने यह पता लगाने के लिए एक पुनरावर्ती फ़ंक्शन का निर्माण किया कि क्या 8 कोशिकाओं (एन, एनडब्ल्यू, डब्ल्यू, एसडब्ल्यू, एस, एसई, ई, एनई) से जुड़े बिंदु हैं और उस बिंदु के लिए एक ही फ़ंक्शन कहा जाता है। यदि सूची में x अंक हैं, तो मैं इसके चारों ओर एक बहुभुज एकत्र करता हूं।


1

जब से मैं केवल OpenSource सॉफ़्टवेयर का उपयोग करता हूं, तब से मुझे ArcGIS पर कोई उपयोग जानकारी नहीं है। लेकिन मुझे लगता है कि यह एक पूरा किया, Openlayers के साथ है। एक क्लस्टर रणनीति उदाहरण है, जिसे आप यहां देख सकते हैं: http://openlayers.org/dev/examples/strategy/club.html


-1 ओपी ऐसा करने का एक आर्गैज़्म रास्ता पूछ रहा है। OpenLayers का रास्ता देना वास्तव में मदद करने वाला नहीं है।
नाथन डब्ल्यू

2
लेकिन सलामी बल्लेबाज दृष्टिकोण उसे आर्कगिस में इसे लागू करने के तरीके से पता लगाने में मदद कर सकता है ??
ताम्र 1337

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

मैंने इसे अपडाउन किया क्योंकि मैं इसे करने का एक ओपन सोर्स तरीका ढूंढ रहा था और आखिरकार आर्कगिस को पोस्ट करना चाहता था, मैंने अक्सर पाया है कि अन्य जीआईएस सिस्टम में एक समाधान आपको अपनी पसंद के सॉफ़्टवेयर में एक समाधान खोजने में मदद कर सकता है जैसे कि यह एक तरह से टूल है। यह आम नहीं है।
जार्ज
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.