เมื่อพร้อมที่จะเริ่มเขียน 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
Image Constructor
สิ่งใหม่แรกในตัวอย่างนี้คือตัวสร้างรูปภาพ
ee.Image()
อาร์กิวเมนต์ที่ระบุให้กับตัวสร้างคือรหัสสตริงของรูปภาพในแคตตาล็อกข้อมูล Earth Engine (ดูแท็บ Docs ทางด้านซ้าย
ของเครื่องมือแก้ไขโค้ดเพื่อดูรายการอาร์กิวเมนต์ทั้งหมดที่อาจใช้กับตัวสร้างรูปภาพ แท็บเอกสารแสดงข้อมูลล่าสุดเกี่ยวกับสิ่งที่ Earth Engine
ทำได้)
หากต้องการค้นหารหัสรูปภาพ ให้ค้นหาในแคตตาล็อกข้อมูลของ Earth Engine โดยใช้เครื่องมือค้นหา ที่ด้านบนของโปรแกรมแก้ไขโค้ด เช่น พิมพ์ "ความสูง" ลงในช่องค้นหา แล้วสังเกตว่าระบบจะแสดงรายการแรสเตอร์ คลิกรายการ "ข้อมูลระดับความสูงแบบดิจิทัล SRTM เวอร์ชัน 4" เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับชุดข้อมูลนั้น ฟิลด์รหัสรูปภาพจะอยู่ทางด้านขวาของคำอธิบายชุดข้อมูล โปรดสังเกตว่ารหัสรูปภาพใน ตัวอย่างคัดลอกมาจากรหัสรูปภาพที่แสดงในคำอธิบายชุดข้อมูล
อีกวิธีหนึ่งแทนการคัดลอกและวางรหัสรูปภาพคือการใช้ปุ่มนำเข้า ในคำอธิบายชุดข้อมูลหรือลิงก์นำเข้าทางด้านขวา ของผลการค้นหา หากคลิกลิงก์หรือปุ่มนำเข้า ระบบจะสร้างตัวแปรโดยอัตโนมัติในส่วนพิเศษชื่อ "การนำเข้า" ที่ด้านบนของสคริปต์ คุณเปลี่ยนชื่อตัวแปรได้โดยคลิกชื่อตัวแปรในส่วน การนำเข้า
การกำหนดค่าแผนที่
ส่วนใหม่ที่ 2 ของตัวอย่างนี้คือการเรียกใช้ Map.setCenter()
เมธอดนี้
ในออบเจ็กต์ Map
ซึ่งแสดงถึงการแสดงแผนที่ในตัวแก้ไขโค้ด
จะจัดกึ่งกลางแผนที่ที่ลองจิจูด ละติจูด (ในหน่วยองศาทศนิยม) และ
ระดับการซูมที่กำหนด โดยที่ 1 คือการซูมออกเพื่อให้แผนที่แสดงพื้นผิวโลกทั้งหมด ตัวเลขที่ใหญ่กว่า
จะซูมเข้าจากตรงนั้น ดูเมธอดทั้งหมดในออบเจ็กต์ Map
โดย
ตรวจสอบส่วนแผนที่ในแท็บเอกสาร
ทางด้านซ้ายของโปรแกรมแก้ไขโค้ด
การเพิ่มเลเยอร์ลงในแผนที่
บรรทัดสุดท้ายในตัวอย่างระบุว่า ให้ใช้วิธี Map
object's addLayer()
เพื่อเพิ่มรูปภาพลงในแผนที่ที่แสดงในตัวแก้ไขโค้ด
ยินดีด้วย คุณได้สร้างสคริปต์ Earth Engine แรกแล้ว ในส่วนถัดไป คุณจะได้ดูวิธีทำให้รูปภาพนั้นดูดีขึ้นเล็กน้อย
นอกเรื่อง: รูปภาพใน Earth Engine
รูปภาพใน Earth Engine (ดูรายละเอียดเพิ่มเติมได้ที่หน้านี้) ประกอบด้วย แถบอย่างน้อย 1 แถบ แต่ละแถบในรูปภาพจะมีชื่อ ค่าพิกเซล ความละเอียดของพิกเซล และการฉายภาพของตัวเอง ดังที่คุณจะเห็นในไม่ช้า รูปภาพ SRTM มีแถบเดียวคือ "ความสูง"
เมื่อคุณเพิ่มรูปภาพลงในแผนที่โดยใช้ Map.addLayer()
Earth Engine จะต้อง
พิจารณาวิธีแมปค่าในแถบรูปภาพกับสีบนจอแสดงผล หากเพิ่มรูปภาพแบบแถบเดียวลงในแผนที่ Earth Engine จะแสดงแถบเป็นเฉดสีเทาโดยค่าเริ่มต้น โดยกำหนดค่าต่ำสุดเป็นสีดำ และค่าสูงสุดเป็นสีขาว
หากคุณไม่ได้ระบุค่าต่ำสุดและสูงสุดที่ควรจะเป็น Earth Engine จะใช้ค่าเริ่มต้น เช่น รูปภาพที่คุณเพิ่งเพิ่มลงในแผนที่จะแสดงเป็น
รูปภาพระดับสีเทาที่ขยายให้ครอบคลุมช่วงข้อมูลทั้งหมด หรือจำนวนเต็ม 16 บิตที่มีการลงนาม
[-32768, 32767] (โดยค่าเริ่มต้น ระบบจะขยายแถบ float
เป็น [0, 1] และขยายแถบ byte
เป็น [0, 255])
คุณดูประเภทข้อมูลของรูปภาพได้โดยการพิมพ์รูปภาพและตรวจสอบออบเจ็กต์รูปภาพ ในแท็บคอนโซล เช่น วางโค้ดต่อไปนี้หลังโค้ดก่อนหน้า
โปรแกรมแก้ไขโค้ด (JavaScript)
print('SRTM image', image);
เมื่อคลิกเรียกใช้ โปรดสังเกตว่าออบเจ็กต์จะปรากฏในคอนโซล หากต้องการตรวจสอบพร็อพเพอร์ตี้ของออบเจ็กต์ ให้ขยายโดยคลิกไอคอนซิป
() ทางด้านซ้ายของออบเจ็กต์หรือพร็อพเพอร์ตี้ ขยายออบเจ็กต์รูปภาพ พร็อพเพอร์ตี้ "bands" แถบ "elevation"
ที่ดัชนี "0" และพร็อพเพอร์ตี้ "data_type" ของแถบ "elevation" เพื่อดูว่าเป็น
ประเภทข้อมูล
signed int16
การปรับแต่งการแสดงภาพเลเยอร์
หากต้องการเปลี่ยนวิธีขยายข้อมูล คุณสามารถระบุพารามิเตอร์อื่นให้กับ
การเรียกใช้ Map.addLayer()
ได้ โดยเฉพาะพารามิเตอร์ที่ 2
visParams
จะช่วยให้คุณระบุค่าต่ำสุดและสูงสุดที่จะแสดงได้ หากต้องการ
ดูค่าที่จะใช้ ให้เปิดใช้งาน
แท็บเครื่องมือตรวจสอบ แล้วคลิกไปรอบๆ
แผนที่เพื่อดูช่วงค่าพิกเซล หรือใช้เครื่องมือจัดการเลเยอร์เพื่อยืดข้อมูลแบบอินเทอร์แอกทีฟ
จากนั้นสังเกตค่าต่ำสุดและสูงสุดที่สอดคล้องกับการยืดเปอร์เซ็นไทล์หรือส่วนเบี่ยงเบนมาตรฐาน
สมมติว่าจากการทดลองดังกล่าว คุณพบว่าควรขยายข้อมูลเป็น [0, 3000]
หากต้องการแสดงรูปภาพโดยใช้ช่วงนี้ ให้ใช้
โปรแกรมแก้ไขโค้ด (JavaScript)
Map.addLayer(image, {min: 0, max: 3000}, 'custom visualization');
โปรดทราบว่าพารามิเตอร์ visParams
เป็นออบเจ็กต์ที่มีพร็อพเพอร์ตี้ที่ระบุ min
และ max
(ดูข้อมูลเพิ่มเติมเกี่ยวกับออบเจ็กต์ JavaScript ได้จากบทแนะนำ JavaScript หรือข้อมูลอ้างอิงภายนอกนี้) โปรดทราบว่าพารามิเตอร์ที่ 3 สำหรับ Map.addLayer()
คือชื่อของเลเยอร์ที่แสดงในเครื่องมือจัดการเลเยอร์ ผลลัพธ์ควรมีลักษณะคล้ายกับรูปที่ 1 วางเมาส์เหนือช่องเลเยอร์ทางด้านขวาเพื่อดูผลลัพธ์ของการเปลี่ยนชื่อเลเยอร์นั้น

หากต้องการแสดงแถบเดียวโดยใช้ชุดสี ให้เพิ่มพร็อพเพอร์ตี้ palette
ลงในออบเจ็กต์ visParams
โปรแกรมแก้ไขโค้ด (JavaScript)
Map.addLayer(image, {min: 0, max: 3000, palette: ['blue', 'green', 'red']}, 'custom palette');
ผลลัพธ์ควรมีลักษณะคล้ายกับรูปที่ 2

นอกเรื่อง: จานสี
ชุดสีช่วยให้คุณตั้งค่ารูปแบบสีสำหรับรูปภาพแถบเดียวได้ จานสีคือรายการสตริงสีที่คั่นด้วยคอมมา ซึ่งมีการประมาณค่าเชิงเส้นระหว่างค่าสูงสุดและ ค่าต่ำสุดในพารามิเตอร์การแสดงข้อมูล (หรือค่าเริ่มต้นตามประเภทแถบ ตามที่อธิบายไว้ก่อนหน้านี้) เช่น พิกเซลที่น้อยกว่าหรือเท่ากับค่าต่ำสุดจะ แสดงด้วยสีแรกในรายการ ส่วนพิกเซลที่มากกว่าหรือเท่ากับค่าสูงสุดจะ แสดงด้วยสีสุดท้ายในรายการ สีกลางจะ ขยายเชิงเส้นไปยังค่าพิกเซลกลาง
สีจะกำหนดโดยใช้รูปแบบค่าสี CSS มาตรฐานเว็บ (ดูข้อมูลอ้างอิงภายนอกนี้เพื่อดูข้อมูลเพิ่มเติม) คุณระบุสีได้โดยใช้ชื่อหรือสตริงเลขฐานสิบหกที่ระบุการผสมสีแดง เขียว และน้ำเงิน ค่าต่ำสุดในตำแหน่งใดตำแหน่งหนึ่งใน 3 ตำแหน่งคือ 00 (แสดงถึงเลขฐานสิบ 0) ส่วนค่าสูงสุดคือ FF (แสดงถึงเลขฐานสิบ 255) สตริง "000000" แสดงถึงสีดำ "FFFFFF" คือสีขาว "FF0000" คือสีแดง "00FF00" คือสีเขียว และ "0000FF" คือสีน้ำเงิน ดูรายละเอียดเพิ่มเติมได้ที่ส่วนจานสี คุณยังยืดหยุ่นได้อีกโดยใช้ตัวอธิบายเลเยอร์ที่มีสไตล์ตามที่อธิบายไว้ใน ส่วนนี้
ในบทแนะนำนี้ คุณจะได้เรียนรู้วิธีแสดงภาพหลายแถบในภายหลัง แต่ก่อนอื่น ไปที่หน้าถัดไปเพื่อดูข้อมูลเกี่ยวกับการคำนวณด้วยรูปภาพ