بعد أن أصبحت جاهزًا لبدء كتابة رمز JavaScript في Earth Engine، ابدأ بنسخ الرمز التالي إلى "أداة تعديل الرموز":
محرّر الرموز البرمجية (JavaScript)
// Instantiate an image with the Image constructor. var image = ee.Image('CGIAR/SRTM90_V4'); // Zoom to a location. Map.setCenter(-112.8598, 36.2841, 9); // Center on the Grand Canyon. // Display the image on the map. Map.addLayer(image);
انقر على الزر تشغيل في أعلى "محرّر التعليمات البرمجية"، ولاحظ ظهور صورة رمادية جدًا على الخريطة. لا تقلق، ستتمكّن من تحسين مظهره قريبًا. إذا لم تكن على دراية بصيغة أي جزء من هذا المثال، احرص على مراجعة البرنامج التعليمي حول JavaScript في Earth Engine.
أداة إنشاء الصور
أول عنصر جديد في هذا المثال هو دالة إنشاء الصور
ee.Image()
. الوسيط المقدَّم إلى الدالة الإنشائية هو معرّف السلسلة لصورة في كتالوج بيانات Earth Engine. (اطّلِع على علامة التبويب المستندات على يمين "محرّر الرموز" للاطّلاع على قائمة كاملة بالوسيطات المحتملة لبرنامج إنشاء الصور. تمثّل علامة التبويب المستندات أحدث المعلومات حول إمكانات "محرّك Google Earth".
للعثور على رقم تعريف صورة، ابحث في كتالوج بيانات Earth Engine باستخدام أداة البحث في أعلى "محرّر التعليمات البرمجية". على سبيل المثال، اكتب "الارتفاع" في حقل البحث، ولاحظ أنّه يتم عرض قائمة بالصور النقطية. انقر على الإدخال "SRTM Digital Elevation Data Version 4" للاطّلاع على مزيد من المعلومات حول مجموعة البيانات هذه. على يسار وصف مجموعة البيانات، يظهر حقل معرّف الصورة. لاحظ أنّه تم نسخ رقم تعريف الصورة في المثال من رقم تعريف الصورة المعروض في وصف مجموعة البيانات.
بدلاً من نسخ معرّفات الصور ولصقها، يمكنك استخدام الزر استيراد في وصف مجموعة البيانات أو رابط استيراد على الجانب الأيسر من نتائج البحث. إذا نقرت على رابط أو زر الاستيراد، سيتم إنشاء متغيّر تلقائيًا في قسم خاص باسم 'عمليات الاستيراد' في أعلى النص البرمجي. يمكنك إعادة تسمية المتغيّر من خلال النقر على اسمه في قسم عمليات الاستيراد.
ضبط الخريطة
الجزء الجديد الثاني في هذا المثال هو استدعاء Map.setCenter()
. تعمل هذه الطريقة على كائن Map
، الذي يمثّل عرض الخريطة في "أداة تعديل الرموز"، على توسيط الخريطة عند خط الطول وخط العرض المحدّدين (بالدرجات العشرية) ومستوى التكبير أو التصغير حيث يكون 1 هو مستوى التصغير الذي يتيح للخريطة عرض سطح الأرض بالكامل. وتؤدي الأعداد الأكبر إلى التكبير أكثر. يمكنك استكشاف جميع الطرق في الكائن Map
من خلال الاطّلاع على قسم "الخريطة" في علامة التبويب "المستندات" على الجانب الأيسر من "محرّر التعليمات البرمجية".
إضافة طبقة إلى الخريطة
يقول السطر الأخير في المثال: استخدِم طريقة Map
الكائن addLayer()
لإضافة صورة إلى عرض الخريطة في "محرّر التعليمات البرمجية".
تهانينا! لقد أنشأت أول نص برمجي في Earth Engine. في القسم التالي، ستتعرّف على كيفية تحسين مظهر هذه الصورة.
استطراد: الصور في Earth Engine
تتألف الصور في Earth Engine (يمكنك الاطّلاع على هذه الصفحة للحصول على مزيد من التفاصيل) من نطاق واحد أو أكثر. لكل نطاق في الصورة اسم وقيم بكسل ودقة بكسل ونظام إسقاط خاص به. ستلاحظ قريبًا أنّ صورة SRTM تتضمّن نطاقًا واحدًا: "الارتفاع".
عند إضافة صورة إلى خريطة باستخدام Map.addLayer()
، يحتاج Earth Engine إلى تحديد كيفية ربط القيم في نطاقات الصورة بالألوان المعروضة. إذا تمت إضافة صورة بنطاق واحد إلى خريطة، يعرض Earth Engine النطاق تلقائيًا بتدرّج الرمادي، حيث يتم تعيين الحد الأدنى للقيمة باللون الأسود والحد الأقصى للقيمة باللون الأبيض.
في حال عدم تحديد الحد الأدنى والحد الأقصى، سيستخدم Earth Engine القيم التلقائية. على سبيل المثال، يتم عرض الصورة التي أضفتها للتو إلى الخريطة كصورة بتدرّج الرمادي تمتد إلى النطاق الكامل للبيانات، أو عدد صحيح ذو 16 بت موقّع [-32768، 32767]. (يتم توسيع نطاق قيم النطاقات float
إلى [0, 1] ويتم توسيع نطاق قيم النطاقات byte
إلى [0, 255] تلقائيًا).
يمكنك التعرّف على نوع بيانات الصورة من خلال طباعتها وفحص عنصر الصورة في علامة التبويب وحدة التحكّم. على سبيل المثال، ألصِق ما يلي بعد الرمز السابق:
محرّر الرموز البرمجية (JavaScript)
print('SRTM image', image);
عند النقر على "تشغيل"، لاحظ أنّ عنصرًا يظهر في وحدة التحكّم. للتحقيق في خصائص الكائن، وسِّعه بالنقر على السهم () إلى يسار الكائن أو الخاصية. وسِّع عنصر الصورة والسمة "النطاقات" ونطاق "الارتفاع" عند الفهرس "0" وسمة "نوع البيانات" لنطاق "الارتفاع" لتكتشف أنّه نوع بيانات
signed int16
.
تخصيص طريقة عرض الطبقة
لتغيير طريقة تمديد البيانات، يمكنك تقديم مَعلمة أخرى إلى استدعاء Map.addLayer()
. على وجه التحديد، تتيح لك المَعلمة الثانية، visParams
، تحديد الحدّين الأدنى والأقصى للقيم المطلوب عرضها. للاطّلاع على القيم التي يجب استخدامها، فعِّل علامة التبويب أداة الفحص وانقر على الخريطة للتعرّف على نطاق قيم البكسل. بدلاً من ذلك، استخدِم مدير الطبقات لتمديد البيانات بشكل تفاعلي، ثم راقِب الحد الأدنى والحد الأقصى المقابلين لعمليات تمديد النسبة المئوية أو الانحراف المعياري. لنفترض أنّك حدّدت من خلال هذه التجربة أنّه يجب توسيع نطاق البيانات إلى [0, 3000]. لعرض الصورة باستخدام هذا النطاق، استخدِم:
محرّر الرموز البرمجية (JavaScript)
Map.addLayer(image, {min: 0, max: 3000}, 'custom visualization');
يُرجى العِلم أنّ المَعلمة visParams
هي عنصر يتضمّن سمات تحدّد min
وmax
. (يمكنك الاطّلاع على مزيد من المعلومات حول عناصر JavaScript من خلال برنامج تعليمي حول JavaScript أو هذا المرجع الخارجي). يُرجى العِلم أنّ المَعلمة الثالثة الخاصة بـ Map.addLayer()
هي اسم الطبقة التي يتم عرضها في إدارة الطبقات. يجب أن تبدو النتيجة مشابهة للشكل 1. مرِّر مؤشر الماوس فوق مربّع الطبقات على اليسار للاطّلاع على تأثير إعادة تسمية تلك الطبقة.

لعرض قناة واحدة باستخدام لوحة ألوان، أضِف السمة palette
إلى عنصر visParams
:
محرّر الرموز البرمجية (JavaScript)
Map.addLayer(image, {min: 0, max: 3000, palette: ['blue', 'green', 'red']}, 'custom palette');
يجب أن تبدو النتيجة مشابهة لما هو موضّح في الشكل 2.

استطراد: لوحات الألوان
تتيح لك لوحات الألوان ضبط نظام الألوان للصور ذات النطاق الواحد. لوحة الألوان هي قائمة مفصولة بفواصل لسلاسل الألوان يتم استيفاؤها خطيًا بين الحد الأقصى والحد الأدنى للقيم في مَعلمات التمثيل المرئي (أو القيم التلقائية وفقًا لنوع النطاق، كما هو موضّح سابقًا). على سبيل المثال، سيتم عرض وحدات البكسل الأقل من الحد الأدنى أو المساوية له باللون الأول في القائمة، وسيتم عرض وحدات البكسل الأكبر من الحد الأقصى أو المساوية له باللون الأخير في القائمة. يتم تمديد الألوان الوسيطة خطيًا إلى قيم البكسل الوسيطة.
يتم تحديد الألوان باستخدام نظام قيم ألوان CSS المتوافق مع معايير الويب (راجِع هذا المرجع الخارجي لمعرفة المزيد). يمكن تحديد الألوان بالاسم أو كسلاسل سداسية عشرية تشير إلى مزيج من الأحمر والأخضر والأزرق. أدنى قيمة في أي من المواضع الثلاثة هي 00 (التي تمثّل الرقم العشري 0)، بينما أعلى قيمة هي FF (التي تمثّل الرقم العشري 255). يمثّل السلسلة "000000" اللون الأسود، و"FFFFFF" اللون الأبيض، و"FF0000" اللون الأحمر، و"00FF00" اللون الأخضر، و"0000FF" اللون الأزرق. يُرجى الاطّلاع على قسم لوحات الألوان لمزيد من التفاصيل. يمكن استخدام أشكال أخرى من التمديد من خلال استخدام "وصفات الطبقات ذات الأنماط"، كما هو موضّح في هذا القسم.
في وقت لاحق من هذا البرنامج التعليمي، ستتعرّف على كيفية عرض صور متعددة النطاقات. ولكن قبل ذلك، انتقِل إلى الصفحة التالية للتعرّف على كيفية إجراء العمليات الحسابية باستخدام الصور.