QGIS में लेबल करने के लिए केवल एक समोच्च रेखा चुनना?


12

क्या लेबलिंग के लिए केवल एक समोच्च रेखा का चयन करना संभव है?

मेरे पास प्रत्येक पंक्ति के लिए कई लेबल हैं और मैं केवल मुख्य लोगों को लेबल करना पसंद करूंगा, जैसे 1000 mऔर1500 m


यकीन नहीं होता कि यह एक डुप्लिकेट है, लेकिन क्या आप देख सकते हैं कि gis.stackexchange.com/q/89501/1297 और gis.stackexchange.com/q/59778/1297 पर देखने के लिए कि क्या वे आपको उस चीज़ से मिलते हैं जो आप कर रहे हैं। खोज रहे हैं? और फिर मुझे लगता है कि यह आपके प्रश्न में मदद करेगा यदि आपने जो कुछ भी कोशिश की थी उस पर कुछ विवरण प्रदान किया और शायद यह गलत हो रहा है।
SaultDon

जवाबों:


13

QGIS 2.6 में (शायद पहले के संस्करणों के साथ-साथ, मुझे नहीं पता) आप इसे लेयर प्रॉपर्टीज, Labelsटैब, Renderingसेक्शन के तहत कर सकते हैं । रेंडरिंग विकल्पों की सूची के बारे में आधे रास्ते में एक बटन है जो आपको एक अभिव्यक्ति लिखने देगा जो उन विशेषताओं की सूची को परिभाषित करेगा जिन्हें वास्तव में लेबल किया जाएगा। आपकी अभिव्यक्ति कुछ इस तरह होगी "Elevation" IN (1000, 1500)। यहां बटन (पीले रंग में) है, मेरे पास यह केवल 32 के ऊंचाई मान के साथ केवल लेबल आकृति के लिए सेट है:

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


11

एक दृष्टिकोण समोच्च परत को लोड करना और इसे स्टाइल करना होगा। फिर उसी परत को फिर से लोड करें और एक फ़िल्टर लागू करें (परत पर राइट-क्लिक करें और 'फ़िल्टर ..' पर जाएं) चित्र में दिखाए गए के समान फ़िल्टर अभिव्यक्ति का उपयोग करें। मेरे मामले में मैं 50 मीटर के ऊर्ध्वाधर अंतराल पर प्रमुख आकृति चाहता था और ऊँचाई मूल्यों वाले क्षेत्र को "प्रोप_वेल्यू" कहा जाता था।

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

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

फ़िल्टर अभिव्यक्ति:

("prop_value" % 50) = 0

50 मीटर के ऊर्ध्वाधर अंतराल पर भी समोच्च का चयन करेगा। Spatialite डेटाबेस के साथ काम करता है, आकारफाइल्स के बारे में निश्चित नहीं है।


6

मैं इस दृष्टिकोण का उपयोग कर रहा हूं, जो कि कंटूरिंग की लेबलिंग और प्रदर्शन को काफी आसान स्थिति में बनाता है।

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

बस भावों के लिए आवश्यक मूल्यों को रखो और बस।

Ie यदि आप 500 मीटर से अधिक के समोच्च को छिपाना चाहते हैं, तो आप इस अभिव्यक्ति का उपयोग लाइन सिंबल के डेटेडफाइन्ड गुणों के लिए कर सकते हैं:

CASE WHEN Elevation / 500 - floor(Elevation / 500) =  0 then 
   color_rgba(255,255,255,100) 
else 
    color_rgba(255,255,255,0) 
end

केवल 500 मीटर के अंतराल को लेबल करने के लिए इस अभिव्यक्ति का उपयोग करें:

CASE WHEN Elevation /500 - floor(Elevation / 500) = 0 THEN Elevation || ' m' END

विभिन्न लाइन चौड़ाई लागू करने के लिए यानी डेटा परिभाषित गुणों के लिए इस तरह एक अभिव्यक्ति का उपयोग करें:

CASE WHEN Elevation / 100 - floor(Elevation / 100) = 0 THEN 
    0.25 
WHEN Elevation / 50 - floor(Elevation / 50) = 0 THEN 
    0.15 
ELSE 
    0.1 
END

स्क्रीनशॉट 1 स्क्रीनशॉट 2


@ कटिंदरी, उत्तर की जाँच करने का मन ..
Kay

3

एक और सुविधाजनक अभिव्यक्ति है "ELEV" LIKE '%00'(चरण 100 मीटर) या "ELEV" LIKE '%00' OR "ELEV" LIKE '%50'(चरण 50 मीटर) या "ELEV" LIKE '%0'(चरण 10 मीटर) आदि, जहां "एलएलवी" मेरा डेटा उन्नयन क्षेत्र है। दूसरा विकल्प केवल तभी काम करता है जब 50 एक अंतराल (10 मी या 5 मी ...) का गुणक हो।

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