موقع د. عزيز الجعيد
  • الرئـيـسـية

  • الأقسام

    • علم البيانات والذكاء الإصطناعي

    • ذكاء الأعمال

    • لغة البرمجة بايثون

    • مقالات متنوعـة

    • لغة البرمجة آر R

    • الإحــــــصــــــاء

    • البيانات المفتوحة

  • عـنــي

  • تواصل معي

علم البيانات والذكاء الاصطناعي

  • الرئـيـسـية

  • الأقسام

    • علم البيانات والذكاء الإصطناعي

    • ذكاء الأعمال

    • لغة البرمجة بايثون

    • مقالات متنوعـة

    • لغة البرمجة آر R

    • الإحــــــصــــــاء

    • البيانات المفتوحة

  • عـنــي

  • تواصل معي

استخدام خريطة الشارع المفتوحة (OpenStreetMap) في لغة البرمجة آر R

17/05/2019 | لغة البرمجة آر R | شارك بتعليقك

 

خريطة الشارع المفتوحة (OpenStreetMap) والتي يرمز لها بالرمز (OSM) هي خريطة مفتوحة المصدر تم إطلاقها عام 2004 بواسطة ستيف كوست من المملكة المتحدة وهي عبارة عن مشروع تعاوني ويجمع بياناتها أكثر من مليون مستخدم مسجل  وتدعم من خلال مؤسسة خريطة الشارع المفتوحة وهي مؤسسة غير ربحية. في هذا المقال سوف نعطي مقدمة عن آلية الإستفادة منها بواسطة لغة البرمجة آر R من خلال إتباع الخطوات التالية:

اولاً: تفعيل الحزم (packages) اللازمة

In:
library(osmdata) 
library(sf)
library(ggmap)

حيث أن:

osmdata استيراد بيانات “خريطة الشارع المفتوحة” كمعالم بسيطة أو كائنات مكانية.
sf دعم المعالم البسيطة (Simple Features) ، وهي طريقة موحدة لترميز البيانات المكاني.
ggmap تصوير البيانات المكانية وتعمل مع الحزمة ggplot2 المتخصصة في تصوير البيانات.

ثانياً: يمكن معرفة المعالم (features) المكانية المتوفرة على الخريطة من خلال الدالة:

In:
available_features()

مثلاً، من ضمن المعالم “shop” والذي يحوي جميع تصنيفات المتاجر والتي يمكن يمكن الحصول عليها من خلال الدالة:

In:
available_tags("shop")

يمكن إستبدال “shop” بأي معلم (features) للحصول على تصنيفات مختلفة لكل المعالم.

ثالثاً: تحديد الموقع وإضافة المعالم الى استعلام  (Overpass query)

In:
Place=c(left = 46.5, bottom = 24.5, right = 46.95, top = 24.85)
q = Place%>%
   opq()%>%
   add_osm_feature(key ="shop", value ="supermarket")

حيث تم الإستعلام عن محلات السوبرماركت (supermarket) ضمن المتاجر (shop) في مدينة الرياض. تم الإعتماد على خطوط الطول والعرض لأنها أكثر دقة من البحث بإستخدام أسم المدينة وأكثر مرونة في الإستعلام.

رابعاً: إرجاع الاستعلام على شكل كائن مكاني لخريطة الشارع المفتوحة وبتنسيق sf من خلال الدالة:

In:
Supermarket = osmdata_sf(q)

خامساً: تصوير البيانات المكانية على الخريطة بإستخدام الكود:

In:
bbox= Place
mad_map = get_map(bbox ,maptype = "terrain", force=TRUE, source = "osm")
ggmap(mad_map)+
  geom_sf(data=Supermarket$osm_points,
          inherit.aes =FALSE,
          colour="#238443",
          fill="#004529",
          alpha=.5,
          size=4,
          shape=21)+
  labs(x="longitude ",y="latitude")

حيث تكون النتيجة كما يلي:

جميع الحقوق الفكرية لهذا المقال محفوظة © موقع د. عزيز، يمنع إعادة نشره في موقع آخر

مقالات ذات صلة:

  • برنامج آر R

    البرنامج الإحصائي آر R هو واحد من أشهر البرامج الإحصائية. هذا البرنامج يعتمد على لغة البرمجة R والتي قام بتطويرها كلاً... برنامج آر R
    اقرأ المزيد
  • آر استوديو (RStudio)

    آر استوديو هو بيئة تشغيل للبرنامج الإحصائي آر R يحوي مجموعة من النوافد والأدوات المصممة بشكل رائع والتي تساعد على... آر استوديو (RStudio)
    اقرأ المزيد
  • مقدمة في لغة البرمجة آر R

    هذا الموضوع سوف نوضح بالتفصيل بعض الأساسيات في لغة البرمجة آر R والتي تمثل الخطوه الأولى في فهم هذه اللغة الهامة ويمكن... مقدمة في لغة البرمجة آر R
    اقرأ المزيد

شارك بتعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *


The reCAPTCHA verification period has expired. Please reload the page.

د. عزيز عوض الله الجعيد
دكتوراه في الإحصاء، عالم بيانات، مبرمج، مهتم في التحليل المتقدم، والبيانات الضخمة والذكاء الاصطناعي، لمزيد من المعلومات أضغط هنا

  • YouTube
جميع الحقوق محفوظة © موقع د. عزيز