क्या QGIS में स्तंभ द्वारा क्रमबद्ध तालिका के लिए पंक्ति संख्या निर्दिष्ट करने का कोई तरीका है?


13

फ़ील्ड कैलकुलेटर के पास "रिकॉर्ड" के तहत एक महान कार्य है, जिसे "$ पंक्तिम" कहा जाता है, जो वर्तमान पंक्ति की संख्या देता है (असाइन करता है)।

क्या छँटाई के साथ मिलकर काम करने का कोई तरीका है? मान लें कि मैं कॉलम "लंबाई" के आधार पर तालिका को सॉर्ट करना चाहता हूं और सबसे छोटी से लेकर सबसे लंबी तक लाइनों का क्रम (क्रम) प्राप्त करना चाहता हूं।

मुझे पता है कि मैं कॉलम द्वारा छाँटने और आदेश (अनुक्रम) के साथ नए कॉलम को आबाद करने के लिए आसानी से कुछ कार्यालय स्प्रेडशीट सॉफ़्टवेयर का उपयोग कर सकता हूं। लेकिन मैं QGIS में पूरी नौकरी करना पसंद करूंगा।

अद्यतन: वर्कअराउंड के रूप में यह भी है कि एक आकृति में सुविधाओं के क्रम को कैसे बदला जाए? - mmqgis प्लगइन और फ़ंक्शन संशोधित / सॉर्ट का उपयोग करना और उसके बाद नई सहेजी गई फ़ाइल पर "$ rownum" का उपयोग करें।

जवाबों:


20

इसलिए, मैंने आपकी समस्या को हल करने के लिए एक प्लगइन ( सॉर्ट और नंबर ) कोडित किया है । यह आपको 3 फ़ील्ड चुनने और इन फ़ील्ड के अनुसार अपनी विशेषता तालिका का आदेश देने की अनुमति देता है। फिर, यह 1 से शुरू होकर, एक नए फ़ील्ड में "तालिका का नाम" ऑर्डर "डिफ़ॉल्ट रूप से रखता है"।

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


यह सुन्दर दिखाई दे रहा है। मैं अब इस प्लगइन का परीक्षण करने जा रहा हूं, धन्यवाद।
मिरो

जब पहली बार 2.8 में स्थापित किया गया था तो यह कुछ त्रुटि के साथ आया था लेकिन 2.14 में परीक्षण और 2.8 में वापस आने के बाद यह उत्कृष्ट काम करता है। धन्यवाद।
मिरो

@ मेरो: आपका स्वागत है। मुझे उम्मीद है कि यह अन्य लोगों के लिए भी उपयोगी होगा।
अरोमाएर

@ArMoraer - बढ़िया प्लगइन!
जोसेफ

1
क्या आप बॉन 3 के लिए इसे फिर से बना सकते हैं -> मुझे यह टूल बहुत पसंद है!
22:12 पर 22:12

7

मुझे यकीन नहीं है कि आप फ़ील्ड कैलकुलेटर के साथ कर सकते हैं, लेकिन आप एक क्वेरी के साथ एक आभासी परत का उपयोग कर सकते हैं:

SELECT 
    * ,
    (SELECT count(*) FROM your_layer AS b WHERE a.length >= b.length) AS length_position
FROM your_layer AS a 
ORDER BY a.length

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