QGIS में अन्य मार्करों को ओवरलैप करने से पाठ लेबल को रोकना?


14

क्या QGIS के भीतर एक ऐसा तरीका है जो टेक्स्ट लेबल को एक बिंदु परत को लेबल करने के लिए उपयोग किए जाने वाले ओवरलैपिंग आइकन से रोकता है?

नीचे दिखाए गए उदाहरण मानचित्र में, दो परतें हैं:

  1. सड़कों की परत जिसे नए लेबलिंग इंजन का उपयोग करके लेबल किया गया है।
  2. एक बिंदु परत जो राजमार्ग ढाल को दिखाने के लिए svg आइकन का उपयोग करती है।

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

एक संभावित समाधान, जिस पर मैं विचार कर रहा हूं उसमें शामिल होगा:

  1. बिंदु परत की dbf फ़ाइल में एक कॉलम जोड़ना।
  2. जोड़े गए कॉलम को नल या एक स्थान के साथ भरना ।
  3. जोड़ा स्तंभ के लिए QGIS की [नई शैली] लेबलिंग सक्षम करना।

क्या यह रास्ता जाना है या कोई बेहतर तरीका है?

नमूना मानचित्र

QGIS जानकारी: मैं संस्करण 1.7.4 और मैक ओएस 10.7.4 पर हाल ही में संकलित संस्करण 1.8 का उपयोग कर रहा हूं। लिनक्स और विंडोज संस्करण भी मेरे लिए उपलब्ध हैं।


प्रगति अद्यतन : विधि मैंने ऊपर वर्णित की है, हालांकि प्रक्रिया में दो संशोधनों की आवश्यकता है।

  1. स्पेस कैरेक्टर या Null का उपयोग करने के बजाय , नॉन-ब्रेकिंग स्पेस का उपयोग करना पड़ता है। मैंने पाया कि परीक्षण करते समय, नल के साथ खेतों का प्रतिपादन नहीं किया गया है और केवल एक स्थान (एस) वाले क्षेत्रों को नल में बदल दिया गया है । ( गैर-ब्रेकिंग स्पेस टाइप करने के बारे में जानकारी के लिए यह विकिपीडिया पृष्ठ देखें ।)
  2. एडवांस टैब पर लेयर लेबलिंग सेटिंग सेट करते समय, प्लेसमेंट को ओवर प्वाइंट पर सेट करें । प्राथमिकता भी निर्धारित करें जैसे कि यह किसी भी अन्य लेबल परतों की तुलना में अधिक है।

उपयोग किए गए आइकन के आकार के आधार पर, कुछ प्रयोगों को अपेक्षित रूप से काम करने के लिए आवश्यक हो सकता है। परिस्थिति के आधार पर, फ़ॉन्ट वजन और / या आकार को बढ़ाने के प्रयास के बजाय कई वर्णों का उपयोग करना आसान हो सकता है।

नमूना मानचित्र 2

QGIS 1.7 के साथ परीक्षण किया गया और हाल ही में मैक ओएस 10.7.4 पर 1.8 का संकलित किया गया।


1
आप अपने सवालों के जवाब भी दे सकते हैं। मैं आपके समाधान को वोट देना चाहूंगा।
UnderDark

जैसा कि मैंने किया था, आप यहाँ कर सकते हैं: यहाँ
jlSta

जवाबों:


8

मेरे पास अब तक का सबसे अच्छा सुसंगत समाधान जो मैंने ऊपर रखा है, उसकी तर्ज पर है। मान लें कि SHP फ़ाइल का उपयोग किया जाता है, तो चरण निम्न हैं:

  1. डीबीएफ फ़ाइल को या तो एक स्प्रेडशीट एप्लिकेशन जैसे लिब्रे ऑफिस, एक्सेल, या क्यूजीआईएस टेबल मैनेजर प्लगइन के साथ खोलें।
  2. तालिका में एक स्तंभ जोड़ें। यदि एक डेटा प्रकार की आवश्यकता है, तो स्ट्रिंग का उपयोग करें।
  3. गैर-ब्रेकिंग स्थान के साथ कोशिकाओं को भरें । एक बार पूरा होने पर, परिवर्तनों को सहेजें। ( गैर-ब्रेकिंग स्पेस टाइप करने के बारे में जानकारी के लिए यह विकिपीडिया पृष्ठ देखें ।)
  4. बिंदु परत के लिए परत लेबलिंग सेटिंग्स खोलें। उन्नत टैब पर, प्लेसमेंट को ओवर प्वाइंट पर सेट करें और प्राथमिकता सेट करें जैसे कि यह किसी भी अन्य लेबल परतों से अधिक है।

2
2.14 में आपको एक नया कॉलम जोड़ने की भी जरूरत नहीं है, बस लेबल के रूप में '' डाल दें
राफेल

3

मुझे पता है कि यह पुराना है, लेकिन आप उस जानकारी को रखने वाली तालिका में "X Coordinate" और "Y Coordinate" (दोहरी परिशुद्धता) कॉलम जोड़ सकते हैं और फिर लेयर प्रॉपर्टीज और परिवर्तन में लेबल के अंतर्गत "डेटा निर्धारित सेटिंग्स" टैब पर जा सकते हैं। X समन्वय और Y तदनुसार समन्वय करता है। एक बार जब आप ऐसा कर लेते हैं कि आप मूव लेबल बटन का उपयोग करके फ्रीहैंड द्वारा लेबल को स्थानांतरित कर सकते हैं।


1

मैंने इसी तरह की समस्या के लिए एक और उत्तर पोस्ट किया है। दृष्टिकोण परतों के बजाय svg प्रतीकों का उपयोग करता है और प्रत्येक गुण मान, cp के लिए एक अलग svg प्रतीक के लिए पथ सेट करने के लिए डेटा परिभाषित ओवरराइड का उपयोग करता है। QGIS मानचित्र में लेबल के ऊपर प्रतीक का मेरा उत्तर


0

आप लेबल की भरपाई के साथ प्रयोग कर सकते हैं।

मुझे लगता है कि लेबल स्थिति को और अधिक गतिशील बनाने की अनुमति मिलती है, अगर मैं इसे 2 मिमी या तो निर्धारित करता हूं।


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

इसे जाने दें, लेबल संभवतः एक नई गतिशील स्थिति में स्थानांतरित हो जाएगा। हो सकता है कि आप जो नहीं चाहते हैं, लेकिन यह पता लगाने का एकमात्र तरीका कोशिश करना है। मेरे द्वारा उपयोग किया जाने वाला विकल्प नए लेबल टूल के उन्नत टैब में है (जो कि टूलबार में पाया जाता है परत के गुण संवाद से नहीं)।
विली
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.