تحلیل نزدیکترین همسایه (QGIS3) 

GIS در تجزیه و تحلیل روابط فضایی بین ویژگی ها بسیار مفید است. یکی از این تحلیل‌ها، یافتن این است که کدام ویژگی به یک ویژگی خاص نزدیک‌تر است. روش های مختلفی برای انجام این تحلیل در QGIS وجود دارد. می‌توانید با استفاده از Join Attributes by Nearest یک اتصال فضایی انجام دهید یا با استفاده از ابزار Distance Matrix از جعبه ابزار پردازش، فواصل تا همه ویژگی‌ها را از لایه دیگری دریافت کنید . در این آموزش، ابزاری به نام فاصله تا نزدیکترین هاب از جعبه ابزار پردازش را بررسی می کنیم که نه تنها می تواند فاصله تا نزدیکترین ویژگی را پیدا کند، بلکه آن را با یک خط به آن برای تجسم نتایج بپیوندد.

نمای کلی کار 

با توجه به مکان تمام زمین لرزه های شناخته شده بین سال های ۱۹۰۰ و ۲۰۰۰، نزدیک ترین مکان پرجمعیت را برای هر مکانی که زلزله رخ داده است، بیابید.

دریافت داده ها 

  1. برای این آموزش ما مجموعه داده ای از زمین لرزه های بین سال های ۱۹۰۰ تا ۲۰۰۰ را از مرکز داده های ژئوفیزیک ملی NOAA دانلود خواهیم کرد که مجموعه داده بزرگی از تمام زمین لرزه های مهم از ۲۱۵۰ قبل از میلاد را تولید می کند. از پورتال NOAA NCEI دیدن کنید و حداقل را به عنوان ۱۹۰۰و حداکثر را به عنوان وارد کنید ۲۰۰۰. این همه حوادث زلزله ای را که بین آن سال ها رخ داده و توسط NOAA ثبت شده است، باز می گرداند. برای سایر نتایج خاص، می توانید با پارامترهای مختلف فیلتر کنید. روی جستجو کلیک کنید .
../../_images/data011.png
  1. در نتیجه ۲۵۸۵ حادثه زلزله داشتیم. روی نماد دانلود TSV کلیک کنید .
../../_images/data021.png

زمین طبیعی دارای مجموعه داده مکان های پرجمعیت خوبی است . مجموعه داده ساده (کمتر ستون) را دانلود کنید

برای راحتی کار، می‌توانید مستقیماً یک کپی از هر دو مجموعه داده را از لینک‌های زیر دانلود کنید:

زلزله_۲۰۲۱_۱۱_۲۵_۱۴_۳۱_۵۹_+۰۵۳۰٫tsv

ne_10m_populated_places_simple.zip

منابع داده: [NCEI] [NATURALEARTH]

  1. فایل دانلود شده را ne_10m_populated_places_simple.zipدر پنل مرورگر پیدا کرده و آن را گسترش دهید. ne_10m_populated_places_simple.shpفایل را روی بوم بکشید .
../../_images/017.png
  1. یک لایه جدید ne_10m_populated_places_simpleدر پنل لایه ها بارگذاری شده است . این لایه حاوی نقاطی است که مکان های پرجمعیت را نشان می دهد. اکنون لایه زلزله را بارگذاری می کنیم. این لایه به عنوان یک فایل متنی Tab Serepated Values ​​(TSV) ارائه می شود . برای بارگیری این فایل، روی دکمه Open Data Source Manager در نوار ابزار منبع داده کلیک کنید . همچنین می توانید از میانبر صفحه کلید استفاده کنید.Ctrl + L
../../_images/027.png
  1. در کادر گفتگوی Data Source Manager ، متن جدا شده را انتخاب کنید .
../../_images/037.png
  1. روی دکمه … کنار File name کلیک کنید و earthquakes-2021-11-25_13-39-30_+0530.tsvفایل دانلود شده را مرور کنید. بسته به سیستم عامل، ممکن است فایل را در فهرست دانلود شده مشاهده نکنید. اگر چنین است، در گفتگوی Choose a Limited Text File to Open به همه فایل ها (*; .) بروید . پس از باز شدن، Custom Delimiters را در بخش File format انتخاب کنید و علامت بزنید . در بخش تعریف هندسه ، مختصات نقطه را انتخاب کنید . به طور پیش فرض فیلد X و مقادیر فیلد Y به صورت خودکار با فیلدهای مناسب در ورودی پر می شوند. در مورد ما، آنها هستند و . می توانید Geometry CRS را به CRS پیش فرض بگذارید. اگر فایل شما حاوی مختصاتی در CRS دیگری است، می توانید CRS مناسب را در اینجا انتخاب کنید. روی افزودن و سپس بستن کلیک کنید .TabLongitudeLatitudeEPSG:4326 - WGS ۸۴
../../_images/047.png
  1. بزرگنمایی کنید و هر دو مجموعه داده را کاوش کنید. هر نقطه قرمز نشان دهنده محل وقوع زلزله و هر نقطه سبز نشان دهنده محل یک مکان پرجمعیت است. هدف ما این است که از لایه مکان های پرجمعیت برای هر یک از نقاط لایه زلزله نزدیک ترین نقطه را پیدا کنیم. بیایید جدول ویژگی لایه زلزله را بررسی کنیم. لایه را انتخاب کنید و روی نماد Open Attribute Table در نوار ابزار کلیک کنید .
../../_images/057.png
  1. ویژگی‌هایی وجود دارد ۲۵۸۶، اما داده‌ها حاوی ورودی‌های کمی هستند که اطلاعات طول و عرض جغرافیایی ندارند. قبل از ادامه دادن باید آن را حذف کنیم. جدول صفات را ببندید.
../../_images/067.png
  1. به Processing ‣ Toolbox ‣ Vector geometry ‣ Remove null geometries tool بروید. برای باز کردن آن دوبار کلیک کنید.
../../_images/077.png
  1. در کادر محاوره‌ای Remove Null Geometries ، لایه ورودیearthquakes-2021-11-25_13-39-30_+0530 را انتخاب کنید و کادر Also remove خالی هندسه‌ها را علامت بزنید . روی Run کلیک کنید . پس از پایان پردازش، روی Close کلیک کنید .
../../_images/086.png
  1. یک لایه جدید به پنل لایه ها اضافه می شود . برای تحلیل از این لایه به جای لایه اصلی استفاده می کنیم. تیک لایه را در پنل لایه ها بردارید تا پنهان شود. لایه را انتخاب کنید و روی دکمه Open Attribute Table از نوار ابزار Attributes کلیک کنید .Non null geometriesearthquakes-2021-11-25_13-39-30_+0530Non null geometries
../../_images/096.png
  1. با حذف تمام ردیف‌هایی که مقادیر طول و عرض جغرافیایی خالی داشتند، تعداد کمتری را برای کل ویژگی‌ها مشاهده خواهید کرد. ویژگی جدول را ببندید.
../../_images/1029.png
  1. اکنون زمان انجام تحلیل نزدیکترین همسایه است. ابزار پردازش ‣ جعبه ابزار ‣ تحلیل برداری ‣ فاصله تا نزدیکترین هاب (خط به هاب) را جستجو و مکان یابی کنید . برای راه اندازی آن دوبار کلیک کنید.
../../_images/1132.png

توجه داشته باشید

ما همچنین می توانیم یک لایه نقطه به عنوان خروجی اضافه کنیم، از ابزار Distance to nearest hub (نقاط) برای آن استفاده کنیم.

  1. در کادر محاوره ای Distance to Nearest Hub (Line to Hub) ، به عنوان لایه Source points را انتخاب کنید . به عنوان لایه مرکز مقصد انتخاب کنید . به عنوان ویژگی نام لایه هاب انتخاب کنید . این ابزار همچنین فاصله خط مستقیم بین مکان مسکونی و نزدیکترین زلزله را محاسبه می کند. به عنوان واحد اندازه گیری تنظیم کنید . در Hub Distance روی گزینه Save to File کلیک کنید تا فایل به عنوان ذخیره شود . روی Run کلیک کنید . پس از پایان پردازش، روی Close کلیک کنید .Non null geometriesne_10m_populated_places_simplenameKilometers...earthquakes_with_nearest_city.gpkg
../../_images/1230.png
  1. earthquakes_with_nearest_cityدر پنجره اصلی QGIS، یک لایه خط جدید به نام بارگذاری شده در پانل لایه ها را خواهید دید . این لایه دارای ویژگی های خطی است که هر نقطه زلزله را به نزدیکترین مکان مسکونی متصل می کند. لایه را انتخاب کنید earthquakes_with_nearest_cityو روی نماد Open Attribute Table در نوار ابزار کلیک کنید .
../../_images/1328.png
  1. به سمت راست به آخرین ستون ها بروید و ۲ ویژگی جدید به نام های HubName و HubDist را خواهید دید که به ویژگی های اصلی زلزله اضافه شده اند. این نام فاصله تا نزدیکترین همسایه از لایه مکانهای پرجمعیت است.
../../_images/1426.png

اگر می خواهید بازخورد بدهید یا تجربه خود را در مورد این آموزش به اشتراک بگذارید، لطفاً در زیر نظر دهید. (به حساب GitHub نیاز دارد)


دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

خانهدربارهتماسارتباط با ما