কিউজিআইএস-এ লেবেল থেকে বৈশিষ্ট্য পর্যন্ত সরলরেখা?


11

আমি যা করার চেষ্টা করছি সেটি হল পয়েন্ট বৈশিষ্ট্যগুলির একটি সিরিজ লেবেল তবে পয়েন্ট বৈশিষ্ট্যের ঘনত্বের কারণে আমি লেবেলগুলিকে পয়েন্ট বৈশিষ্ট্যগুলি থেকে সরিয়ে নিতে চলেছি। কোন লেবেল কোন বিন্দুটিকে বোঝায় তা দেখানোর জন্য আমি তখন একটি সরল সরল রেখা (তীর নয়) ব্যবহার করতে চাই।

আমি লেবেলগুলি তৈরি করতে এবং যেখানে আমি তাদের চাই সেখানে নিয়ে যেতে "সহজ কাস্টম লেবেল" প্লাগইন ব্যবহার করেছি। তবে আমি যা করতে পারছি না তা হ'ল বিন্দু এবং টেবিলের মধ্যে একটি সরল সরু রেখা তৈরি করা।

আমি অর্জন করা সেরাটি হ'ল "সিম্বল লেয়ার প্রকার" (লেবেল স্তর> বৈশিষ্ট্য> স্টাইল) পরিবর্তন করে "তীর" করা, "বাঁকা তীরগুলি" থেকে চেক করা এবং "প্রতিটি বিভাগে পুনরাবৃত্তি তীর" নির্বাচন করা উচিত। এবং তারপরে মাথার দৈর্ঘ্য এবং বেধ 0 করুন এবং এটিকে যথাসম্ভব "তীরের প্রস্থ" এবং "শুরুতে তীরের প্রস্থ" করুন make তবে এটি এখনও একটি চঞ্চল রেখা তৈরি করে। চিত্র দেখুন

আমি "প্রতীকটি পরে" টাইপ করে "সরল রেখায়" সেট করার চেষ্টা করেছি তবে এর ফলাফলগুলি কিঙ্কস / শীর্ষকোষ / কোণগুলির সাথে রেখাগুলিতে তৈরি হয়। ছবিটি দেখুন বি।

আদর্শভাবে, আমি লেবেল এবং বৈশিষ্ট্য (চিত্র এ এর ​​মতো) এর মধ্যে সোজা লাইন চাই যা বি বিতে থাকা চিত্রগুলির অনুরূপ প্রস্থ are

দুটি ধরণের লেবেল দেওয়ার উদাহরণ

উত্তর:


11

আপনি লেবেল এবং জ্যামিতির মধ্যে লাইন তৈরি করতে একটি অভিব্যক্তি ব্যবহার করতে পারেন

এখানে চিত্র বর্ণনা লিখুন

Expresion:

CASE 
 WHEN (label_x IS NOT NULL AND label_y IS NOT NULL) THEN
  make_line(centroid($geometry),make_point(label_x -2,label_y), make_point(label_x ,label_y))
ELSE
  NULL
END

এবং এর ফলাফল হওয়া উচিত:

এখানে চিত্র বর্ণনা লিখুন


কেবলমাত্র একটি সিডনোট, যদি লেবেলগুলির বৈশিষ্ট্য সরঞ্জামদণ্ডটি ব্যবহার করে লেবেলগুলি ম্যানুয়ালি সরানো হয় এবং প্রকল্পে অবস্থানটি সংরক্ষণ করা হয়, তবে "_অ্যাসিলারি_স্টোরেজ_লাবেলিং_পজিশন "এবং" সহায়ক_স্টোজার_লাবেলিং_পজিশন "নামক ক্ষেত্রগুলিতে লেবেল_এক্স, ওয় ভেরিয়েবলগুলি পরিবর্তন হয়।
গ্যাব্রিয়েল সি

1
আপনি এখানে হিসাবে আপনার মিডল পয়েন্ট 2 ইউনিট স্থাপন make_point(label_x -2,label_y)পশ্চিমী উপকূলে লেবেলগুলি মজাদার দেখায়। এছাড়াও, বিভিন্ন স্কেলে কাজ করা এটিকে অকেজো করে তুলবে। আপনার সেন্ট্রয়েড থেকে আপনার লেবেলের দূরত্ব এবং আপেক্ষিক অবস্থানের ক্ষেত্রে এটি এই পয়েন্টটি আরও ভালভাবে নির্ধারণ করতে কাজ করবে।
অ্যালবার্ট

2

কার্লোসের উত্তর জ্যামিতির জেনারেটরের কেবলমাত্র একটি কম পয়েন্টের জন্য লেবেলের শেষের দিকে একটি অনুভূমিকভাবে প্রান্তিকৃত নেতাকে সোজা রেখা দেয়। আমার উদাহরণ হিসাবে, আমি QGIS 3.0.3 এ লেবেলিং সরঞ্জামদণ্ডটি ব্যবহার করে ম্যানুয়ালি লেবেলগুলি সরিয়েছি। নোট করুন যে কৌশলটি 232709 প্রশ্নের মধ্যে পাওয়া যাবে ।

আমার কেবলমাত্র পরিবর্তনগুলি করা দরকার তা হল আমার অভিব্যক্তিতে x, y মানগুলি:

CASE
   WHEN ("auxiliary_storage_labeling_positionx" IS NOT NULL AND "auxiliary_storage_labeling_positiony" IS NOT NULL) THEN
        make_line(centroid($geometry),make_point("auxiliary_storage_labeling_positionx","auxiliary_storage_labeling_positiony"))
   ELSE
      NULL
END

নেতারা নিজেরাই লাইন হিসাবে, প্রতীক গাছটি এইভাবে যায়:

  • ভরাট
    • জ্যামিতি জেনারেটর
      • লাইন
        • চিহ্নিতকারী রেখা
          • মার্কার
            • সাধারণ চিহ্নিতকারী
          • সরল রেখা

নেতারা লেবেল কেন্দ্রে শেষ হয়েছে তা নিশ্চিত করার জন্য, কেবলমাত্র লেবেলের ডেটা সংজ্ঞায়িত প্রান্তিককরণের অনুভূমিকের জন্য 'সেন্টার' এবং উল্লম্বের জন্য 'অর্ধেক' এর মানগুলি সম্পাদনা করুন। আপনার যা প্রয়োজন লাইনের স্টাইল করতে, চিহ্নিতকারী লাইনে নেস্টেড সরল লাইনটি ব্যবহার করুন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.