

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Peta Amazon Location Service
<a name="maps"></a>

![\[Map icon leading to SDK package, then to multiple devices showing maps.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/maps-overview.png)


Amazon Location Service Maps memberi Anda akses ke data peta dasar untuk 190 negara dengan 5 juta pembaruan harian. Kemampuan peta statis dan dinamis memberikan fleksibilitas untuk memenuhi beragam kebutuhan pengguna dan memberikan solusi pemetaan yang mendalam dan relevan secara kontekstual.

## Penawaran peta
<a name="maps-offering"></a>

Amazon Location Service menawarkan peta dinamis dan statis.

**Peta dinamis**  
Gunakan Gaya AWS Peta termasuk standar, monokrom, hibrida, dan satelit. Tambahkan peta interaktif ke aplikasi Anda menggunakan gaya AWS peta dan mesin [MapLibre](https://maplibre.org/)rendering. Peta dinamis mendukung gerakan termasuk zoom, pan, kemudahan, terbang, pitch, putar, dan bantalan. Untuk detail selengkapnya, lihat [peta dinamis](https://docs.aws.amazon.com/location/latest/developerguide/dynamic-maps.html).

**Peta statis**  
Gunakan peta statis URLs untuk menyematkan gambar peta sederhana di situs web, laporan, atau email tanpa mesin rendering peta. Peta statis mendukung overlay termasuk penanda (pin), rute, dan area poligon untuk aplikasi Anda. Untuk detail selengkapnya, lihat [peta statis](https://docs.aws.amazon.com/location/latest/developerguide/static-maps.html).

## Gaya peta prebuilt
<a name="prebuilt-map-styles"></a>

AWS gaya peta mengikuti konvensi industri yang diakui dan memberikan tampilan visual profesional yang dipoles. Gaya siap pakai ini mempercepat pengembangan tanpa memerlukan desain kartografi khusus. Bangun peta yang menarik dan siap digunakan dengan sedikit usaha. Untuk detail selengkapnya, lihat [gaya peta AWS](https://docs.aws.amazon.com/location/latest/developerguide/map-styles.html).

## Fitur
<a name="maps-features"></a>

AWS Fitur peta menyediakan opsi visualisasi yang disempurnakan untuk geografis, [topografi](https://docs.aws.amazon.com/location/latest/developerguide/maps-topographic-map.html), dan [navigasi](https://docs.aws.amazon.com/location/latest/developerguide/maps-navigation-map.html) seperti transit, logistik, dan data lalu lintas waktu nyata. Buat pengalaman peta yang informatif dan sadar konteks yang disesuaikan dengan kebutuhan spesifik Anda. AWS peta mendukung [internasionalisasi dan lokalisasi](https://docs.aws.amazon.com/location/latest/developerguide/maps-localization-internationalization.html) termasuk pandangan politik dan bahasa. Pilih Point of interest (POI) dan [skema warna](https://docs.aws.amazon.com/location/latest/developerguide/maps-color-scheme.html) yang sesuai dengan kasus penggunaan Anda. Untuk detail selengkapnya, lihat [fitur peta](https://docs.aws.amazon.com/location/latest/developerguide/maps-concepts.html).

## Kasus penggunaan umum
<a name="maps-usecases"></a>

**Sematkan peta di aplikasi Anda**  
Bangun peta ke dalam aplikasi Anda untuk menciptakan pengalaman berbasis lokasi. Visualisasikan lokasi bisnis, cari tempat menarik, dan bantu pengguna menemukan alamat tertentu. Aktifkan fitur berbagi lokasi dan geotagging yang mulus untuk melibatkan pelanggan Anda. Gunakan data peta yang komprehensif, geocoding yang kuat, dan rendering fleksibel untuk membuat peta interaktif yang disesuaikan dengan kebutuhan Anda. Integrasikan pengalaman pemetaan dinamis dan berkualitas tinggi yang mendorong keterlibatan pengguna dan wawasan bisnis ke dalam aplikasi Anda, baik Anda sedang membangun direktori, aplikasi berbagi perjalanan, atau platform sosial.

**Peta statis untuk pelaporan atau pencetakan**  
Tambahkan gambar peta jalan, citra satelit, dan visual berbasis lokasi dengan mulus ke situs web, dokumen, dan aplikasi Anda. Peta statis memungkinkan Anda membuat gambar peta yang dapat disesuaikan yang menyediakan konteks geografis, tanpa rendering sisi klien yang rumit. Tampilkan rute pengiriman pada tanda terima, sertakan detail lokasi dalam dokumen, atau integrasikan peta ke dalam pengalaman digital Anda.

**Menganalisis dan memvisualisasikan data**  
Hamparkan data Anda ke peta berkualitas tinggi untuk mengungkap pola dan tren spasial transformatif. Berdayakan tim Anda untuk membuat visualisasi peta interaktif yang dapat disesuaikan dengan data geografis Anda. Gunakan peta dan data Anda untuk mengoptimalkan pemilihan lokasi, merencanakan infrastruktur, atau menganalisis peluang pasar.

**Tingkatkan pengalaman real estat**  
Menyediakan calon pembeli dengan konteks lokasi yang komprehensif untuk daftar real estat. Tampilkan lokasi properti yang tepat, serta detail lingkungan sekitarnya seperti batas yurisdiksi, bisnis lokal, taman, dan sekolah. Bantu pelanggan menemukan arah ke open house Anda. Ciptakan pengalaman real estat yang informatif dan berpusat pada lokasi yang melibatkan dan menginformasikan klien Anda.

**Bangun pengalaman perjalanan yang menarik**  
Tampilkan peta dinamis yang menampilkan tujuan, dengan tampilan jalan terperinci dan fitur geografis utama. Sorot hotel, restoran, dan tempat menarik lainnya bagi wisatawan dan pelancong. Plot fasilitas luar ruangan, seperti jalur hiking, untuk membantu pengguna merencanakan rencana perjalanan ideal mereka.

**Gunakan peta untuk mendukung upaya tanggap bencana**  
Informasi lokasi yang tepat waktu dan akurat sangat penting selama krisis. Gunakan kemampuan pemetaan untuk membangun situs web dan aplikasi yang menyediakan konteks penting bagi masyarakat selama bencana yang tertunda seperti kebakaran, badai, dan banjir. Tampilkan peta dinamis yang menampilkan rute evakuasi, tempat penampungan yang aman, penutupan jalan, dan kemacetan lalu lintas untuk membantu memberdayakan masyarakat untuk menilai situasi dengan cepat dan membuat keputusan berdasarkan informasi.

## Peta Mandiri APIs
<a name="maps-apis"></a>


|  Nama API  |  Deskripsi Singkat  |  Sumber Daya  | 
| --- | --- | --- | 
|  GetStyleDescriptor  |  Mengambil gaya peta yang tersedia, seperti standar, monokrom, hibrida, dan satelit, yang dapat diterapkan ke peta.  |  [AWS gaya peta dan fitur](map-styles.md)  | 
|  GetTile  |  Mengambil ubin peta individual berdasarkan gaya dan tingkat zoom tertentu, memungkinkan rendering peta pada berbagai tingkat detail.  |  [Ubin](tiles.md)  | 
|  GetStaticMap  |  Menghasilkan gambar peta statis berdasarkan koordinat dan parameter tertentu, berguna untuk menyematkan peta dalam laporan atau email.  |  [Peta statis](static-maps.md)  | 

## Menampilkan Peta
<a name="maps-display"></a>


|  Topik  |  Deskripsi Singkat  |  Sumber Daya  | 
| --- | --- | --- | 
|  Styling Peta Dinamis  |  Amazon Location Service menyediakan dua opsi untuk menata peta dinamis Anda yaitu menggunakan Gaya Peta yang telah dirancang sebelumnya dan menyesuaikan gaya AWS peta menggunakan deskriptor gaya.  | [Gaya peta dinamis](styling-dynamic-maps.md) [Gaya peta standar](standard-map-style.md) [Gaya peta monokrom](monochrome-map-style.md) [Gaya peta hibrida](hybrid-map-style.md) | 
|  Merender Peta Dinamis  |  Amazon Location Service merekomendasikan merender peta menggunakan mesin [MapLibre](https://github.com/maplibre/maplibre-gl-js) rendering. MapLibreadalah mesin untuk menampilkan peta di web atau aplikasi seluler.  |  [Peta Rendering SDK menurut bahasa](map-rendering-by-language.md)  | 
|  Menyesuaikan Peta Statis  |  Cara menyesuaikan peta statis yang dihasilkan menggunakan Amazon Location Service.  |  [Sesuaikan peta statis](customizing-static-maps.md)  | 
|  Melapisi Peta Statis  |  Hamparan pada peta statis Anda untuk meningkatkan representasi visual peta.  |  [Hamparan pada peta statis](overlaying-static-map.md)  | 

# Konsep peta
<a name="maps-concepts"></a>

Amazon Location Service menyediakan kemampuan pemetaan komprehensif yang memungkinkan Anda membuat peta yang disesuaikan dan konsisten secara visual untuk aplikasi Anda. Anda dapat memanfaatkan gaya peta AWS dan prinsip desain untuk menyesuaikan tampilan dan nuansa peta Anda, memastikan konsistensi visual dan branding.

Untuk pelanggan di `ap-southeast-1` dan`ap-southeast-5`, bidang permintaan dan respons yang didukung mungkin berbeda. Lihat [Referensi Maps API](https://docs.aws.amazon.com/location/latest/APIReference/API_Operations_Amazon_Location_Service_Maps_V2.html) untuk detailnya.

Topik ini mencakup konsep pemetaan penting termasuk terminologi, lokalisasi, internasionalisasi, dan fitur peta.

## Fitur
<a name="maps-concepts-features"></a>

Amazon Location Service memungkinkan Anda untuk menyesuaikan peta dengan fitur styling canggih. Tambahkan elemen topografi seperti medan dan kepadatan kontur, ditambah fitur terkait rute seperti lalu lintas dan mode perjalanan (truk atau transit). Opsi penyesuaian ini membantu Anda menyesuaikan tampilan peta untuk kasus penggunaan tertentu, termasuk logistik, transit, atau visualisasi medan luar ruangan.


| Nama fitur | Deskripsi | Nilai yang didukung | Gaya peta yang didukung | 
| --- | --- | --- | --- | 
| Skema warna | Mengatur skema warna untuk peta | Light dan Dark | Standard, Monochrome, Hybrid, Satellite | 
| Medan | Tampilkan hillshade topografi | Hillshade dan Terrain3D | Standard,Monochrome, Hybrid (Terrain3D) (Terrain3D, Satellite) | 
| ContourDensity | Tampilkan garis elevasi topografi | Low, Medium, High | Standard, Monochrome, Hybrid | 
| Lalu lintas | Tampilkan kondisi lalu lintas waktu nyata | All, Congestion | Standard, Monochrome, Hybrid | 
| Bangunan | Tampilkan struktur bangunan tiga dimensi | Buildings3D | Standard, Monochrome | 
| TravelModes | Optimalkan gaya peta untuk mode perjalanan | Transit dan Truck | Standard, Monochrome, Hybrid | 
| Bahasa | Tetapkan bahasa lokal | BCP47 kode bahasa (misalnya, en-US, es-ES, fr-ch) | Standard, Monochrome, Hybrid | 
| PoliticalView | Pandangan geopolitik yang disesuaikan dari negara tertentu | Argentina, Siprus, Mesir, Georgia, Yunani, Kenya, Maroko, Palestina, Serbia, Rusia, Sudan, Suriname, Suriah, Türkiye, Tanzania, Uruguay | Standard, Monochrome, Hybrid | 

Untuk informasi selengkapnya tentang gaya Standar, Monokrom, dan Hibrida, lihat [gaya peta Amazon Location Service](https://docs.aws.amazon.com/location/latest/developerguide/map-styles.html).

**Topics**
+ [Fitur](#maps-concepts-features)
+ [Terminologi peta](maps-terminology.md)
+ [Skema warna](maps-color-scheme.md)
+ [Topografi](maps-topographic-map.md)
+ [Navigasi](maps-navigation-map.md)
+ [Lokalisasi dan internasionalisasi](maps-localization-internationalization.md)
+ [Fitur 3D](maps-3d-map.md)

# Terminologi peta
<a name="maps-terminology"></a>

Memahami istilah-istilah utama ini membantu Anda menggunakan pemetaan APIs dan sumber daya Amazon Location Service secara efektif.

**Peta dasar**  
Peta dasar menyediakan konteks geografis ke peta Anda, disimpan sebagai lapisan ubin vektor. Lapisan ubin ini mencakup fitur geografis seperti nama jalan, bangunan, dan penggunaan lahan untuk referensi visual.

**vektor**  
Data vektor terdiri dari titik, garis, dan poligon, dan digunakan untuk mewakili jalan, lokasi, dan area pada peta. Bentuk vektor juga dapat digunakan sebagai ikon untuk penanda pada peta.

**Raster**  
Data raster adalah data gambar yang terdiri dari grid, biasanya mewakili data kontinu seperti medan, citra satelit, atau peta panas. Gambar raster juga dapat digunakan sebagai ikon atau tekstur pada peta.

**Rendering Peta**  
Pustaka rendering peta menarik data dari Amazon Location Service saat runtime, merender peta berdasarkan sumber daya peta yang dipilih. Sumber daya peta mendefinisikan penyedia data dan gaya peta. Amazon Location Service memerlukan mesin [MapLibre](https://maplibre.org/)rendering.

**Ubin vektor**  
Sebuah ubin vektor menyimpan data peta menggunakan bentuk vektor. Ini menyesuaikan dengan resolusi tampilan dan secara selektif membuat fitur sambil mempertahankan ukuran file kecil untuk kinerja optimal. Format yang didukung: [Mapbox Vector Tiles (MVT)](https://docs.mapbox.com/data/tilesets/guides/vector-tiles-standards/).

**Gaya Peta**  
Gaya peta mendefinisikan warna dan informasi gaya lainnya untuk data peta, menentukan bagaimana peta muncul saat dirender. Amazon Location Service menyediakan gaya peta berdasarkan spesifikasi gaya Mapbox GL.

**Berkas Glyph**  
File biner yang berisi karakter Unicode yang dikodekan, digunakan oleh perender peta untuk menampilkan label.

**Berkas Sprite**  
File gambar Portable Network Graphic (PNG) yang berisi gambar raster kecil dan deskripsi lokasi yang sesuai dalam file JSON. Digunakan oleh perender peta untuk menampilkan ikon atau tekstur pada peta.

**Kotak Bounding**  
Kotak pembatas ditentukan oleh dua titik sudut diagonal: titik barat laut (NW) (kiri atas) dan tenggara (SE) (kanan bawah). Titik-titik ini menentukan luas spasial peta.

# Skema warna
<a name="maps-color-scheme"></a>

Amazon Location Service memungkinkan Anda mengatur skema warna untuk peta. Parameter skema warna menetapkan palet warna peta, seperti `Light` atau`Dark`, agar lebih selaras dengan kebutuhan desain dan aksesibilitas aplikasi Anda.

## Skema warna terang dan gelap
<a name="maps-color-scheme-light-dark"></a>

`Light`Mode ini serbaguna dan cocok dengan konteks apa pun, sementara `Dark` mode ini memiliki palet terbatas yang dirancang untuk menampilkan detail dengan jelas dan mempertahankan keterbacaan di lingkungan yang lebih gelap.

------
#### [ Standard ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/color-scheme-standard.png)


------
#### [ Monochrome ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/color-scheme-monochrome.png)


------
#### [ Hybrid ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/color-scheme-hybrid.png)


------
#### [ Satellite ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/color-scheme-satellite.png)


------

# Topografi
<a name="maps-topographic-map"></a>

Fitur topografi seperti medan dan garis kontur menampilkan perubahan ketinggian dan fitur geografis. Ini membantu pengguna lebih memahami lanskap fisik dan karakteristik medan dari area yang dipetakan mereka.

## Medan
<a name="maps-topographic-terrain"></a>

Fitur medan menampilkan permukaan bumi dengan naungan ketinggian, mewakili perubahan ketinggian dan bentang alam alami. Ini membantu pengguna menafsirkan bentuk dan struktur lanskap di dalam wilayah yang dipetakan.

Gunakan `terrain` parameter dalam permintaan API Anda untuk menampilkan topografi regional dengan shading elevasi. Fitur ini menyoroti variasi ketinggian dan fitur geografis, membantu pengguna memvisualisasikan lanskap fisik dengan lebih baik. Lihat [Cara membuat peta topografi](https://docs.aws.amazon.com/location/latest/developerguide/how-to-create-topographic-maps.html).

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/map-topographic-terrain.gif)


## Medan 3D
<a name="maps-topographic-3d-terrain"></a>

Fitur 3D Terrain menjadikan data elevasi permukaan bumi sebagai permukaan tiga dimensi, memungkinkan pengguna untuk melihat lanskap dari berbagai sudut dan perspektif. Dengan mengontrol sudut pandang, pengguna dapat lebih mudah mendapatkan persepsi kedalaman dan menilai kompleksitas medan, lereng, dan ketinggian relatif di seluruh area yang dipetakan.

Gunakan `terrain` parameter dalam permintaan API Anda untuk mengaktifkan visualisasi medan tiga dimensi. Fitur ini memberikan perspektif imersif fitur topografi, membuatnya sangat berguna untuk memahami hubungan spasial di daerah pegunungan atau bervariasi.

Gabungkan medan 3D dengan `contour-density` parameter dalam permintaan API Anda untuk meningkatkan presisi elevasi dan konteks visual. Lihat [Membuat peta 3D](https://docs.aws.amazon.com/location/latest/developerguide/how-to-create-a-3d-map.html).

------
#### [ Satellite ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/zoom-hybrid-3d-terrain.gif)


------
#### [ Standard ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/zoom-3d-terrain.gif)


------

## Kepadatan kontur
<a name="maps-topographic-contour-density"></a>

Fitur kepadatan kontur memvisualisasikan garis kontur untuk mewakili kecuraman medan dan variasi ketinggian. Pengguna dapat dengan mudah mengidentifikasi lereng, gradien elevasi, dan pola topografi lainnya dengan ini.

Gunakan `contour-density` parameter dalam permintaan API Anda untuk merender garis kontur elevasi topografi yang mewakili kecuraman dan bentuk medan. Ini memberikan visualisasi rinci bentang alam pada berbagai tingkat kepadatan untuk meningkatkan pemahaman topografi. Lihat [Cara membuat peta topografi](https://docs.aws.amazon.com/location/latest/developerguide/how-to-create-topographic-maps.html).

------
#### [ Low ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/zoom-contours-low.gif)


------
#### [ Medium ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/zoom-contours-medium.gif)


------
#### [ High ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/zoom-contours-high.gif)


------

# Navigasi
<a name="maps-navigation-map"></a>

Fitur navigasi seperti `Traffic` dan `Truck TravelModes` menyediakan alat visualisasi dinamis yang meningkatkan navigasi dan perencanaan rute. Mereka membantu pengguna memahami kondisi jalan real-time dan memilih opsi perjalanan yang paling efisien berdasarkan kebutuhan transportasi mereka.

## Lalu Lintas
<a name="maps-navigation-traffic"></a>

Lapisan lalu lintas menyediakan visualisasi real-time kondisi lalu lintas, termasuk kemacetan jalan, zona konstruksi, dan insiden yang dilaporkan. Fitur ini membantu pengguna membuat keputusan perutean yang terinformasi dan mengoptimalkan efisiensi perjalanan berdasarkan kondisi jalan saat ini.

Gunakan `traffic` parameter dalam permintaan API Anda untuk menampilkan informasi lalu lintas waktu nyata. Ini termasuk data tentang kemacetan jalan, area konstruksi, dan insiden, membantu pengguna membuat keputusan perutean yang terinformasi dan efisien. Lihat [cara menampilkan lalu lintas waktu nyata di peta](https://docs.aws.amazon.com/location/latest/developerguide/how-to-set-real-time-traffic-map.html).

------
#### [ All ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/zoom-traffic-all.gif)


------
#### [ Congestion ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/zoom-traffic-congestion.gif)


------

## Mode perjalanan
<a name="maps-navigation-travel-modes"></a>

Fitur mode perjalanan memungkinkan visualisasi dan pemilihan metode transportasi yang berbeda. Ini mendukung informasi perutean untuk berbagai mode seperti angkutan umum, truk, atau jenis navigasi khusus lainnya yang mempertimbangkan pembatasan dan peraturan jalan. Ini membantu pengguna merencanakan rute yang dioptimalkan untuk mode perjalanan spesifik mereka.

Gunakan `travel-modes` parameter dalam permintaan API Anda untuk menampilkan data perutean khusus transportasi. Lihat [cara menampilkan detail transit di peta](https://docs.aws.amazon.com/location/latest/developerguide/how-to-show-transit-details-map.html) dan [cara membuat peta logistik](https://docs.aws.amazon.com/location/latest/developerguide/how-to-create-logistic-map.html).

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/map-travel-modes-transit.gif)


![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/map-travel-modes-truck.gif)


# Lokalisasi dan internasionalisasi
<a name="maps-localization-internationalization"></a>

Amazon Location Service mendukung fitur pelokalan yang memungkinkan Anda menyesuaikan peta untuk bahasa dan wilayah tertentu. Ini termasuk dukungan untuk nama tempat lokal dan kemampuan untuk membuat peta dalam berbagai bahasa.


| Gaya | Pandangan Politik | Bahasa | 
| --- | --- | --- | 
| Standar | Argentina, Siprus, Mesir, Georgia, Yunani, Kenya, Maroko, Palestina, Serbia, Rusia, Sudan, Suriname, Suriah, Türkiye, Tanzania, Uruguay | Didukung melalui pustaka sisi klien | 
| Monokrom | Argentina, Siprus, Mesir, Georgia, Yunani, Kenya, Maroko, Palestina, Serbia, Rusia, Sudan, Suriname, Suriah, Türkiye, Tanzania, Uruguay | Didukung melalui pustaka sisi klien | 
| Hibrida | Argentina, Siprus, Mesir, Georgia, Yunani, Kenya, Maroko, Palestina, Serbia, Rusia, Sudan, Suriname, Suriah, Türkiye, Tanzania, Uruguay | Didukung melalui pustaka sisi klien | 
| Satelit | Tidak didukung | Tidak didukung | 

## Bahasa
<a name="maps-languages"></a>

Amazon Location Service menyediakan Maps APIs yang memungkinkan Anda menyesuaikan bahasa label peta dan elemen teks. Kemampuan ini membantu aplikasi Anda melayani audiens global atau wilayah dengan berbagai bahasa. Dengan menampilkan peta dalam bahasa pilihan pengguna, Anda meningkatkan pengalaman pengguna secara keseluruhan, membuat peta lebih mudah diakses dan relevan dengan basis pengguna Anda yang beragam.

Untuk informasi selengkapnya, lihat [Cara mengatur bahasa pilihan untuk peta](how-to-set-preferred-language-map.md).

![\[Map of Taiwan showing major cities including Taipei, Taichung, and Kaohsiung along the western coast.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/standard-language-switcher.gif)


## Pandangan politik
<a name="maps-political"></a>

Secara default, Amazon Location Service menyajikan perspektif internasional, yang secara visual mewakili wilayah yang disengketakan dengan batas putus-putus. Untuk beralih dari perspektif internasional ke tampilan geopolitik khusus negara, gunakan parameter *tampilan politik* dalam kueri API Anda. Ini membantu bisnis mematuhi undang-undang setempat, karena negara-negara tertentu memerlukan kepatuhan terhadap pandangan geopolitik spesifik mereka untuk peta dan data peta.

Selain perspektif internasional default, Amazon Location Service mendukung pandangan geopolitik negara-negara berikut: Argentina, Siprus, Mesir, Georgia, Yunani, Kenya, Maroko, Palestina, Serbia, Rusia, Sudan, Suriname, Suriah, Türkiye, Tanzania, Uruguay. Untuk mengaktifkan pandangan geopolitik, berikan nilai yang sesuai ke parameter tampilan *politik*.

Lihat informasi yang lebih lengkap di [Cara mengatur tampilan politik peta](how-to-set-political-view-map.md).

![\[Map of Cyprus showing the locations of Nicosia and Limassol, with surrounding waters.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/maps-political-view.png)


# Fitur 3D
<a name="maps-3d-map"></a>

Kemampuan visualisasi 3D Amazon Location Service - medan dan bangunan - membantu pengguna membuat keputusan yang lebih baik dengan menambahkan kedalaman dan perspektif ke data geografis. Medan 3D mengungkapkan perubahan ketinggian yang penting untuk optimalisasi rute, perencanaan tanggap darurat, dan rekreasi luar ruangan, sementara bangunan 3D menyediakan konteks spasial untuk navigasi perkotaan, penilaian real estat, dan identifikasi tengara. Fitur-fitur ini terintegrasi dengan mulus melalui parameter API sederhana (medan, bangunan), memungkinkan aplikasi di seluruh logistik, keselamatan publik, pariwisata, dan real estat untuk memberikan pengalaman pengguna yang lebih intuitif dan menarik tanpa implementasi yang rumit.

## Medan 3D
<a name="maps-3d-terrain"></a>

Fitur 3D Terrain menjadikan data elevasi permukaan bumi sebagai permukaan tiga dimensi, memungkinkan pengguna untuk melihat lanskap dari berbagai sudut dan perspektif. Dengan mengontrol sudut pandang, pengguna dapat lebih mudah mendapatkan persepsi kedalaman dan menilai kompleksitas medan, lereng, dan ketinggian relatif di seluruh area yang dipetakan.

Gunakan `terrain` parameter dalam permintaan API Anda untuk mengaktifkan visualisasi medan tiga dimensi. Fitur ini memberikan perspektif imersif fitur topografi, membuatnya sangat berguna untuk memahami hubungan spasial di daerah pegunungan atau bervariasi.

Gabungkan medan 3D dengan `contour-density` parameter dalam permintaan API Anda untuk meningkatkan presisi elevasi dan konteks visual. Lihat [Membuat peta 3D](https://docs.aws.amazon.com/location/latest/developerguide/how-to-create-a-3d-map.html).

------
#### [ Satellite ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/zoom-hybrid-3d-terrain.gif)


------
#### [ Standard ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/zoom-3d-terrain.gif)


------

## Bangunan 3D
<a name="maps-3d-buildings"></a>

Fitur Bangunan 3D menjadikan jejak bangunan sebagai struktur tiga dimensi dengan tinggi dan volume, memungkinkan pengguna untuk memvisualisasikan lingkungan perkotaan dari berbagai sudut dan perspektif. Dengan mengontrol sudut pandang, pengguna dapat lebih mudah memahami kepadatan bangunan, hubungan ketinggian, dan konteks spasial di dalam kota dan daerah maju.

Gunakan `buildings` parameter dalam permintaan API Anda untuk mengaktifkan visualisasi bangunan tiga dimensi. [Fitur ini memberikan perspektif lanskap perkotaan yang mendalam, membuatnya sangat berguna untuk memahami tata letak kota, mengidentifikasi landmark, dan menavigasi lingkungan perkotaan yang kompleks. Lihat Membuat peta 3D.](https://docs.aws.amazon.com/location/latest/developerguide/how-to-create-a-3d-map.html)

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/zoom-3d-buildings.gif)


## Tampilan Globe
<a name="maps-3d-globe-view"></a>

Fitur Globe View menyediakan representasi bola Bumi, memungkinkan pengguna untuk memvisualisasikan data geografis pada bola dunia tiga dimensi. Perspektif ini menawarkan cara alami dan intuitif untuk memahami hubungan spasial global, tata letak benua, dan kelengkungan permukaan bumi.

Gunakan Globe View untuk menampilkan peta dengan kelengkungan Bumi yang realistis dan perspektif global. Lihat [Membuat peta 3D](https://docs.aws.amazon.com/location/latest/developerguide/how-to-create-a-3d-map.html).

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/zoom-globe-view.gif)


# AWS gaya peta dan fitur
<a name="map-styles"></a>

## Ikhtisar gaya peta
<a name="map-style-overview"></a>

Untuk meminta peta, Anda harus memilih terlebih dahulu gaya peta. Gaya peta menentukan tampilan visual peta yang dirender, termasuk gaya untuk ubin peta, mesin terbang, dan sprite. Ubin peta dapat berupa vektor (MVT) atau raster (gambar). Meskipun gaya dapat berubah saat Anda memperbesar atau memperkecil, umumnya mempertahankan tema yang konsisten. Anda dapat mengganti bagian atau seluruh gaya sebelum meneruskannya ke pustaka rendering peta.

## AWS gaya peta
<a name="aws-map-styles"></a>

AWS gaya peta mematuhi standar industri, menawarkan tampilan yang canggih dan profesional. Gaya ini mengurangi time-to-market dan menghilangkan kebutuhan kartografer khusus untuk membuat gaya peta dari awal. Gaya yang telah dirancang sebelumnya ini memungkinkan Anda membuat peta yang menarik secara visual dengan cepat dan efektif bagi pengguna akhir Anda.

Dengan memanfaatkan gaya AWS peta yang telah dirancang sebelumnya, Anda dapat melewati proses yang memakan waktu dan intensif sumber daya dalam merancang dan membangun gaya peta dari awal. Ini mempercepat proses pengembangan Anda, memungkinkan Anda untuk fokus pada fungsionalitas inti.




| Nama gaya peta | Deskripsi | Skema warna | Mendukung Peta Dinamis | Mendukung Peta Statis | 
| --- | --- | --- | --- | --- | 
| Standar | Gaya peta berwarna | Gelap dan Terang | Ya | Ya | 
| Monokrom | Gaya peta skala abu-abu | Gelap dan Terang | Ya | Tidak | 
| Hibrida | Hamparan jalan dan label pada citra satelit | Tidak Berlaku | Ya | Tidak | 
| Satelit | Gaya peta berbasis citra satelit | Tidak Berlaku | Ya | Ya | 

Amazon Location Service menyediakan gaya mengikuti [spesifikasi MapLibre GL gaya](https://maplibre.org/maplibre-style-spec/).

## Gaya peta standar
<a name="standard-map"></a>

Gaya peta Standar adalah desain peta tujuan umum yang bersih dan modern yang cocok dengan indah dan fungsional ke hampir semua aplikasi atau situs web.

Untuk mempelajari selengkapnya, lihat [Gaya peta standar](standard-map-style.md).

![\[Map of Boston showing neighborhoods, streets, and waterways in standard and dark modes.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/map-standard.png)


## Gaya peta monokrom
<a name="monochrome-map"></a>

Gaya peta Monokrom adalah kanvas minimalis dengan palet warna terbatas, dirancang untuk digunakan dengan hamparan visualisasi data. Gaya Monokrom menawarkan mode terang dan gelap, mengkomunikasikan semua informasi penting yang diperlukan untuk konteks geografis.

Untuk mempelajari selengkapnya, lihat [Gaya peta monokrom](monochrome-map-style.md).

![\[Two maps of North America, one light and one dark, showing countries and major bodies of water.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/map-monochrome.png)


## Gaya peta hibrida
<a name="hybrid-map"></a>

Gaya peta hibrida menggabungkan citra satelit global dengan label yang jelas dan kategori POI yang dapat dikonfigurasi dari peta vektor kami.

Untuk mempelajari selengkapnya, lihat [Gaya peta hibrida](hybrid-map-style.md).

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/map-hybrid.png)


## Gaya peta satelit
<a name="satellite-map"></a>

Gaya peta Satelit menyajikan citra dunia nyata resolusi tinggi yang ditangkap oleh satelit, menawarkan pemandangan lanskap, bangunan, dan medan yang realistis. Gaya ini biasanya mencakup label atau overlay minimal untuk menjaga fokus pada detail geografis.

![\[Satellite view of Australia, New Zealand, and Southeast Asian islands surrounded by deep blue oceans.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/map-satellite.png)


# Gaya peta standar
<a name="standard-map-style"></a>

Gaya peta Standar menawarkan desain peta yang bersih, modern, dan serba guna yang dapat masuk dengan mulus ke hampir semua aplikasi atau situs web.

## Skema warna
<a name="color-scheme"></a>

Gaya peta Standar hadir dalam mode terang dan gelap. Mode cahaya serbaguna dan dapat masuk ke dalam konteks apa pun, sedangkan mode gelap memiliki palet terbatas, yang dirancang untuk menampilkan detail dengan jelas dan mempertahankan keterbacaan di lingkungan yang lebih gelap. Ini memastikan gangguan minimal, terutama dalam skenario seperti navigasi malam hari.

------
#### [ Forest ]

![\[Map of Washington state and Vancouver area showing coastal regions and major cities.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/color-scheme-forest.png)


------
#### [ Road ]

![\[Map of Bronx area showing highways, neighborhoods, and landmarks in light and dark modes.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/color-scheme-road.png)


------
#### [ City ]

![\[Map of Boston showing neighborhoods, streets, and waterfront areas in light and dark modes.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/color-scheme-city.png)


------
#### [ Neighborhood ]

![\[Map of Montreal showing districts, landmarks, and streets in light and dark modes.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/color-scheme-neighborhood.png)


------

## Palet modern yang menyenangkan
<a name="modern-palette"></a>

Warna-warna lembut memberikan konteks penggunaan lahan yang penting tanpa membebani peta, menawarkan informasi berguna pada tingkat zoom tinggi dan rendah. Diperbesar, fitur seperti hutan, gurun, dan gletser menambah kekayaan peta. Ketika diperbesar, berbagai warna menyoroti landmark penting seperti sekolah, rumah sakit, area rekreasi (seperti taman dan fasilitas olahraga), dan distrik perkotaan seperti zona komersial dan industri.

Gaya keseluruhan menampilkan palet warna yang kohesif, termasuk penanda POI yang melengkapi area penggunaan lahan masing-masing. Jaringan jalan ditampilkan dalam nuansa abu-abu, memberikan detail tanpa membanjiri peta dengan warna-warna cerah dan mengganggu.

------
#### [ Highway ]

![\[Map of San Francisco Bay Area showing cities and highways in standard and dark modes.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/modern-highway.png)


------
#### [ Beach ]

![\[Map of Malibu area showing Pacific Coast Highway, Legacy Park, and Malibu Lagoon State Beach.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/modern-beach.png)


------
#### [ Island ]

![\[Map of Oahu island showing major highways, Honolulu, and surrounding areas in day and night views.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/modern-island.png)


------
#### [ Neighborhood ]

![\[Map of downtown Honolulu showing streets, landmarks, and neighborhoods in light and dark modes.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/modern-neighborhood.png)


------
#### [ Intersection ]

![\[Map of Lower Manhattan showing City Hall Park, streets, and landmarks in light and dark modes.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/style-intersection.png)


------
#### [ Roundabout ]

![\[Map of Washington Circle area showing streets, landmarks, and points of interest in light and dark modes.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/style-roundabout.png)


------

## Poin menarik yang kaya (POI)
<a name="rich-poi"></a>

Gaya peta Standar mendukung beragam tempat menarik yang dapat dikonfigurasi (POIs). Hanya dengan beberapa baris kode, Anda dapat memilih kategori POI yang relevan dengan kasus penggunaan Anda.

![\[Map showing various points of interest in Midtown Manhattan, including businesses and landmarks.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/poi-toggle-animation.gif)


## Didesain untuk dunia
<a name="designed-for-the-world"></a>

Gaya Standar mendukung pandangan politik yang berbeda, memastikan bahwa peta menampilkan batas yang benar untuk pengguna Anda. Gaya ini juga memungkinkan peralihan bahasa yang mudah untuk label peta, dengan lusinan bahasa dan sistem penulisan yang didukung.

Untuk mempelajari selengkapnya, lihat [Lokalisasi dan internasionalisasi](maps-localization-internationalization.md).

------
#### [ Languages ]

![\[Map of Taiwan showing major cities and geographical features including Taiwan Strait.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/standard-language-switcher.gif)


------
#### [ Political view ]

![\[Map of Cyprus showing Nicosia in the north and Limassol in the south, with surrounding Mediterranean Sea.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/maps-political-view.png)


------

## Topografi
<a name="topography"></a>

Gaya peta Standar memberikan visualisasi topografi terperinci yang menyoroti variasi ketinggian dan fitur geografis alami. Garis kontur, bayangan, dan tekstur medan menciptakan representasi lanskap yang realistis, memungkinkan pengguna untuk dengan mudah menafsirkan lereng, lembah, dan puncak. Rendering topografi ini sangat ideal untuk perencanaan luar ruangan, analisis lingkungan, dan aplikasi di mana memahami karakteristik medan meningkatkan pengambilan keputusan dan kesadaran spasial.

------
#### [ Both Terrain and Contour Density ]

 ![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/map-terrain-contour-light.png) ![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/map-terrain-contour-dark.png) 

------
#### [ Only terrain ]

 ![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/map-terrain-light.png) ![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/map-terrain-dark.png) 

------
#### [ Only contour density ]

 ![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/map-contour-light.png) ![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/map-contour-dark.png) 

------

## Navigasi
<a name="navigation"></a>

Gaya peta Standar menyediakan opsi untuk memberikan visualisasi dinamis yang dirancang untuk mengoptimalkan navigasi dan perencanaan rute. Data lalu lintas langsung menyoroti kemacetan, insiden, dan kondisi jalan, memungkinkan pengguna untuk mengantisipasi penundaan dan menyesuaikan rute mereka sesuai dengan itu. Dengan beberapa mode perjalanan—seperti truk atau angkutan umum—fitur ini memberdayakan pengguna untuk memilih opsi yang paling efisien dan sesuai konteks untuk rute mereka, memastikan pengalaman perutean yang lebih lancar dan lebih terinformasi.

------
#### [ Traffic ]

 ![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/traffic-light.png) ![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/traffic-dark.png) 

------
#### [ Transit ]

 ![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/transit-light.png) ![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/transit-dark.png) 

------
#### [ Truck ]

 ![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/truck-light.png) ![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/truck-dark.png) 

------

## 3D
<a name="3D"></a>

Gaya peta Standar memberikan visualisasi tiga dimensi imersif yang membuat elevasi medan dan struktur bangunan dengan kedalaman dan perspektif spasial. Sudut pandang yang dapat disesuaikan, kontrol nada, dan rendering tiga dimensi menciptakan representasi realistis dari lanskap alam dan lingkungan perkotaan, memungkinkan pengguna untuk dengan mudah menafsirkan perubahan ketinggian, kompleksitas medan, dan hubungan spasial. Rendering tiga dimensi ini sangat ideal untuk perencanaan rute, navigasi perkotaan, dan aplikasi di mana memahami dimensi vertikal dan persepsi kedalaman meningkatkan pengambilan keputusan dan kesadaran spasial..

------
#### [ 3D Terrain ]

 ![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/3d-terrain-light.png) ![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/3d-terrain-dark.png) 

------
#### [ 3D Buildings ]

 ![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/3d-buildings-light.png) ![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/3d-buildings-dark.png) 

------

## Penggunaan lahan
<a name="land-use"></a>

Gaya peta Standar menggunakan warna-warna cerah untuk menunjukkan penggunaan lahan yang ditentukan. Hijau mewakili hutan, rumput, lapangan golf, pusat olahraga, dan taman. Warna yang relevan digunakan untuk badan air, gletser, gurun, dan pantai. Selain itu, penggunaan lahan seperti komersial, industri, bandara, zona militer, fasilitas medis, dan area pendidikan disorot dengan kategori dinamis tertentu.

------
#### [ Light ]

![\[Color-coded squares representing various land uses with corresponding hex codes.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/land-use-light.png)


------
#### [ Dark ]

![\[Color-coded squares representing various land uses with corresponding hex codes and labels.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/land-use-dark.png)


------

# Gaya peta monokrom
<a name="monochrome-map-style"></a>

Gaya Monokrom adalah kanvas minimalis dengan palet warna terbatas, dirancang untuk digunakan dengan hamparan visualisasi data. Gaya ini mendukung mode terang dan gelap, yang masing-masing mengkomunikasikan semua informasi penting yang diperlukan untuk konteks geografis.

## Skema warna
<a name="color-schemes"></a>

Gaya Monokrom menawarkan pilihan warna untuk mode gelap dan terang.

------
#### [ Continent ]

![\[Map of North America showing the United States, Canada, Mexico, and parts of Central and South America.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/monochrome-continent.png)


------
#### [ Neighborhood ]

![\[Map of Downtown Miami showing streets, parks, and landmarks in light and dark modes.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/monochrome-neighborhood-colors.png)


------

## Kasus penggunaan
<a name="use-case"></a>

Gaya Monokrom sangat cocok untuk visualisasi data dan kebutuhan desain minimalis.

### Visualisasi data
<a name="data-visualization"></a>

Gaya Monokrom sengaja hanya menggunakan nuansa abu-abu, memungkinkan Anda sepenuhnya kebebasan memilih warna untuk lapisan overlay data seperti choropleths, heatmap, atau peta titik.

![\[Map of lower Manhattan showing streets, landmarks, and red dots indicating data points.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/monochrome-data-vis.png)


### Desain minimalis
<a name="minimalist"></a>

Untuk mempertahankan peta yang bersih dan tidak mencolok, gaya Monokrom mencakup serangkaian tempat menarik yang berkurang (POIs) untuk fitur-fitur penting, seperti bandara, taman, rumah sakit, dan universitas.

------
#### [ Airport ]

![\[Map showing Miami International Airport and surrounding roads including Airport Expy and Dolphin Expy.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/monochrome-airport.png)


------
#### [ Neighborhood ]

![\[Map showing Jackson Memorial Hospital, UHealth Tower, and nearby streets in light and dark modes.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/monochrome-neighborhood.png)


------

Meskipun gaya Monokrom mencakup serangkaian yang dikurangi POIs, ubin yang mendasarinya masih berisi set lengkap data POI. Ini memungkinkan Anda untuk menampilkan POIs yang tidak hadir secara visual dalam gaya.

## Dirancang untuk dunia
<a name="designed-for-the-world"></a>

Gaya Monokrom mendukung pandangan politik yang berbeda, memastikan bahwa peta menampilkan batas yang benar untuk pengguna Anda. Gaya ini juga memungkinkan peralihan yang mudah antar bahasa untuk label peta, dengan lusinan bahasa dan sistem penulisan yang didukung.

![\[Map of Taiwan showing major cities and the Taiwan Strait, with a monochrome color scheme.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/monochrome-language-switcher.gif)


# Gaya peta hibrida
<a name="hybrid-map-style"></a>

Gaya peta Hybrid menggabungkan citra satelit global dengan label jelas yang sama dan kategori titik minat (POI) yang dapat dikonfigurasi yang ditemukan dalam gaya peta Standar. Kombinasi ini memberikan detail geografis yang kaya sekaligus memastikan keterbacaan dan kegunaan untuk aplikasi Anda.

## Poin menarik yang kaya (POI)
<a name="rich-poi"></a>

Label dan POIs telah dirancang khusus untuk kontras dan keterbacaan, memberikan konteks yang diperlukan untuk lapisan satelit tanpa mengganggu citra rinci. Garis jalan yang ringan menyoroti struktur perkotaan saat diperbesar dan secara bertahap memudar saat Anda memperbesar, mengungkapkan informasi tingkat jalan yang lebih rinci.

------
#### [ Zoom ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/hybrid_zoom.gif)


------
#### [ Neighborhood ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/hybrid-neighborhood.png)


------
#### [ Zoomed-in ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/hybrid-zoom.png)


------

## Didesain untuk dunia
<a name="designed-for-the-world"></a>

Gaya Hybrid mendukung pandangan politik yang berbeda, memastikan bahwa peta menampilkan batas yang benar untuk pengguna Anda. Gaya ini juga memungkinkan peralihan yang mudah antar bahasa untuk label peta, dengan lusinan bahasa dan sistem penulisan yang didukung tersedia untuk memastikan pengalaman yang dilokalkan.

# Peta APIs
<a name="choose-maps-apis"></a>

Peta menyediakan akses ke jenis peta dinamis dan statis untuk berbagai aplikasi. Untuk informasi lebih lanjut, Lihat[Peta Amazon Location Service](maps.md).
+ **Peta Dinamis**: Peta interaktif yang dapat disesuaikan secara real time, memungkinkan pengguna untuk menggeser, memperbesar, dan melapisi data. Untuk informasi lebih lanjut, Lihat[Peta dinamis](dynamic-maps.md).
+ **Peta Statis**: Gambar statis peta yang menampilkan lokasi atau rute tertentu tanpa elemen interaktif, cocok untuk aplikasi dengan interaktivitas terbatas. Untuk informasi lebih lanjut, Lihat[Peta statis](static-maps.md).

Tabel berikut menyajikan sejumlah kasus penggunaan bisnis yang paling baik diselesaikan dengan Maps APIs.

## Kasus penggunaan peta
<a name="maps-table"></a>

Bagian berikut menyajikan sejumlah kasus penggunaan bisnis yang paling baik diselesaikan dengan Maps APIs.


| **Kebutuhan bisnis** | **API yang berguna** | **Contoh** | 
| --- | --- | --- | 
|  **Tampilkan peta interaktif** Mendukung gerakan peta, seperti zoom, pan, ease, fly, pitch, rotate, dan bearing.  | `GetTile`dan `GetStyleDescriptor` dengan mesin rendering () MapLibre | [Cara menampilkan peta](how-to-display-a-map.md) | 
|  **Tambahkan spidol ke peta** Contohnya adalah spidol, ikon, dan banyak lagi.  |  `GetTile`dan `GetStyleDescriptor` dengan mesin rendering () MapLibre | [Cara menambahkan spidol di peta](how-to-add-marker-on-map.md) [Cara menambahkan ikon di peta](how-to-add-icon-on-map.md) | 
|  **Tambahkan komponen interaksi pengguna ke peta** Contohnya menunjukkan peta dalam bahasa pilihan atau pandangan geo-politik. |  `GetTile`dan `GetStyleDescriptor` dengan mesin rendering () MapLibre | [Cara menambahkan kontrol pada peta](how-to-add-control-on-map.md) [Cara menambahkan popup ke peta](how-to-add-popup-to-map.md) | 
| **Visualisasikan data waktu nyata atau pra-rekaman pada peta** Contohnya adalah peta panas, fitur KML, GeoJSON, poligon, persegi panjang, polyline, lingkaran, spidol, dan banyak lagi. | `GetTile`dan `GetStyleDescriptor` dengan mesin rendering () MapLibre | [Cara menambahkan garis di peta](how-to-add-line-on-map.md) [Cara menambahkan poligon di peta](how-to-add-polygon-on-map.md) | 
| **Tampilkan peta dengan lokalisasi**Contohnya menunjukkan peta dalam bahasa pilihan atau pandangan geo-politik. |  `GetTile`dan `GetStyleDescriptor` dengan mesin rendering () MapLibre | [Cara mengatur bahasa pilihan untuk peta](how-to-set-preferred-language-map.md) [Cara mengatur tampilan politik peta](how-to-set-political-view-map.md) | 
| **Menampilkan gambar peta statis** Misalnya, gunakan gambar peta dalam aplikasi, email, laporan, atau cetak. | `GetStaticMap` | [Cara mendapatkan peta statis dari posisi tertentu](get-static-map-specific-position.md) [Cara mendapatkan peta statis dari dimensi tertentu](get-static-map-specific-dimension.md) [Cara memutuskan antara radius dan zoom untuk peta statis](choose-radius-vs-zoom.md) [Cara menambahkan skala untuk peta statis](add-scale-static-map.md)  | 
| **Tambahkan penanda ke gambar peta** Contohnya adalah spidol, lingkaran kedekatan, ikon, dan banyak lagi. | `GetStaticMap` | [Cara menambahkan penanda ke peta statis](add-marker-static-map.md) | 
| **Visualisasikan data pada gambar peta** Contohnya adalah fitur GeoJSON, poligon, persegi panjang, polyline, lingkaran, dan banyak lagi. |  `GetStaticMap` | [Cara menambahkan garis ke peta statis](how-to-add-line-static.md)  | 
| **Visualisasikan kasus penggunaan dunia nyata di peta** Contohnya termasuk rute, lingkaran kedekatan, dan banyak lagi. |  `GetStaticMap` | [Cara menambahkan rute ke peta statis](how-to-add-route.md)  | 
| **Visualisasikan pencarian Tempat dan/atau hasil geocode pada peta**Semua geokoordinat APIs kembali, kecuali pelengkapan otomatis.  | GetTiledan GetStyleDescriptor dengan rendering engine (MapLibre) dengan API Places |    | 
| **Gambarlah rute di peta**Mendukung penandaan titik arah. | GetTiledan GetStyleDescriptor dengan rendering engine (MapLibre) dengan rute Calculate  |  | 
| **Visualisasikan jejak GPS yang cocok di peta**Mendukung mode perjalanan, seperti truk, pejalan kaki, mobil, dan skuter.  | GetStyleDescriptordengan rendering engine (MapLibre) dengan Snap to road  |  | 

# Peta dinamis
<a name="dynamic-maps"></a>

**catatan**  
Anda harus menggunakan fitur tampilan politik untuk mematuhi undang-undang yang berlaku, termasuk yang terkait dengan pemetaan negara atau wilayah tempat peta, gambar, dan data lain yang Anda akses melalui Amazon Location Service tersedia.

Peta dinamis, juga dikenal sebagai peta interaktif, adalah peta digital yang mendukung gerakan seperti zoom, pan, ease, fly, pitch, rotate, dan bearing. Dengan Amazon Location Service, Anda dapat membuat aplikasi peta yang memberikan pengalaman responsif, interaktif, dan imersif bagi pengguna Anda. Peta ini membantu pengguna memvisualisasikan dan menganalisis data real-time dan historis berdasarkan input pengguna, memungkinkan mereka untuk menggeser, memperbesar, dan menjelajahi peta secara real-time. Peta yang ditawarkan oleh Amazon Location Service juga mendukung berbagai bahasa dan pandangan politik.

Pelajari lebih lanjut tentang [Lokalisasi dan internasionalisasi](maps-localization-internationalization.md).

Misalnya permintaan, respons, cURL, dan perintah CLI untuk API ini, lihat [Cara](https://docs.aws.amazon.com/location/latest/developerguide/dynamic-maps-how-to.html) menggunakan peta dinamis.

------
#### [ City ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/dynamic-city.png)


------
#### [ Roads ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/dynamic-roads.png)


------
#### [ Park ]

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/dynamic-parks.png)


------

Untuk informasi selengkapnya tentang Gaya AWS Peta, lihat[AWS gaya peta dan fitur](map-styles.md).

## Kasus penggunaan umum
<a name="common-use-cases"></a>

**Menganalisis dan memvisualisasikan data**  
Hamparkan data Anda ke peta berkualitas tinggi untuk mengungkap pola dan tren spasial transformatif. Berdayakan tim Anda untuk membuat visualisasi peta interaktif yang dapat disesuaikan dengan data geografis Anda. Gunakan peta dan data untuk mengoptimalkan pemilihan lokasi, merencanakan infrastruktur, atau menganalisis peluang pasar.

**Tingkatkan pengalaman real estat**  
Menyediakan calon pembeli dengan konteks lokasi yang komprehensif untuk daftar real estat. Tampilkan lokasi persis properti bersama dengan detail lingkungan sekitarnya seperti batas yurisdiksi, bisnis lokal, taman, dan sekolah. Bantu pelanggan menemukan arah ke open house Anda dan ciptakan pengalaman real estat yang informatif dan berpusat pada lokasi.

**Bangun pengalaman perjalanan yang menarik**  
Tampilkan peta dinamis yang menampilkan tujuan, dengan tampilan jalan terperinci dan fitur geografis utama. Sorot tempat menarik seperti hotel, restoran, dan atraksi bagi wisatawan dan pelancong. Plot fasilitas luar ruangan seperti jalur hiking untuk membantu pengguna merencanakan rencana perjalanan ideal mereka.

## Merender peta dinamis
<a name="rendering-dynamic-map"></a>

Mesin rendering peta adalah perpustakaan yang bertanggung jawab untuk rendering visual peta di layar digital. Mesin rendering menjahit ubin peta (vektor, hibrida, satelit), data peta (titik, garis, poligon), atau data raster (citra) bersama-sama untuk menampilkan peta interaktif di browser web atau aplikasi asli. Amazon Location Service merekomendasikan penggunaan mesin [MapLibre](https://github.com/maplibre/maplibre-gl-js)rendering, yang mendukung platform web dan seluler (iOS dan Android). MapLibre juga menyediakan model plugin dan mendukung antarmuka pengguna untuk mencari dan merutekan dalam berbagai bahasa.

Untuk informasi selengkapnya, lihat [Buat aplikasi Peta dan Tempat Lokasi Amazon pertama Anda](first-app.md).

## Meminta aset peta
<a name="requesting-map-assets"></a>

Mesin rendering menggunakan gaya peta, yang berisi referensi ke ubin peta, sprite (ikon), dan mesin terbang (font). Saat pengguna berinteraksi dengan peta—memuat, menggeser, atau memperbesar—mesin rendering memanggil APIs (untuk ubin, sprite, dan mesin terbang) dengan parameter input yang diinginkan. Anda juga dapat langsung menelepon ini APIs berdasarkan kebutuhan aplikasi Anda.

**Ubin peta**  
Ubin persegi kecil berisi data yang diambil dari server dan dirakit oleh mesin rendering untuk membuat peta digital interaktif.

**Gaya peta**  
Kumpulan aturan yang menentukan tampilan visual peta, seperti warna dan gaya. Amazon Location Service mengikuti spesifikasi [gaya Mapbox GL](https://docs.mapbox.com/style-spec/guides/).

**File mesin terbang**  
File biner yang berisi karakter Unicode yang dikodekan, digunakan oleh perender peta untuk menampilkan label teks.

**Berkas Sprite**  
File gambar Portable Network Graphics (PNG) yang berisi gambar raster kecil, dengan deskripsi lokasi dalam file JSON. Digunakan oleh perender peta untuk membuat ikon atau tekstur pada peta.

# Ubin
<a name="tiles"></a>

Ubin peta sudah dirender sebelumnya, bagian kecil dari peta yang lebih besar, biasanya ditampilkan sebagai gambar persegi. Mereka digunakan untuk menampilkan data geografis secara efisien dengan memuat hanya bagian yang terlihat pada tingkat zoom yang berbeda. Ada tiga jenis utama ubin peta:

Untuk informasi selengkapnya, lihat [GetTile](https://docs.aws.amazon.com/location/latest/APIReference/API_geomaps_GetTile.html)di *Referensi API Amazon Location Service*.

## Jenis ubin
<a name="tile-types"></a>

**Ubin peta vektor**  
Ubin peta vektor menyimpan data peta sebagai bentuk geometris (titik, garis, poligon) bukan sebagai gambar. Ini memungkinkan pembuatan peta berkualitas tinggi dan dapat diskalakan yang tetap jelas pada resolusi apa pun.

**Ubin peta raster**  
Ubin peta raster adalah gambar pra-render yang mewakili area geografis tertentu. Tidak seperti ubin vektor, ubin raster lebih sederhana tetapi tidak memiliki fleksibilitas untuk restyling.

**Ubin peta hibrida**  
Ubin peta hibrida menggabungkan data vektor dan raster. Mereka menggunakan data vektor untuk elemen peta inti, seperti jalan, sambil menggunakan citra raster untuk elemen yang lebih kompleks seperti satelit terperinci atau fotografi udara.

## Lapisan ubin vektor
<a name="vector-tiles-layers"></a>

Berikut ini adalah 10 lapisan ubin peta vektor:
+ **Batas: Mendefinisikan batas-batas** administratif dan geografis, termasuk perbatasan negara, negara bagian, dan kota.
+ **Bangunan dan alamat**: Merupakan bentuk bangunan dan titik alamat terperinci.
+ **Bumi**: Menunjukkan cakupan medan dan permukaan global untuk fitur alam seperti gurun, pegunungan, dan hutan.
+ **Penggunaan lahan**: Menampilkan area yang dikategorikan seperti taman, lahan pertanian, dan zona perkotaan.
+ **Tempat**: Mengidentifikasi lokasi penting seperti kota, kota kecil, dan landmark terkenal.
+ **Tempat menarik (POIs)**: Menyoroti atraksi, bisnis, dan lokasi penting lainnya.
+ **Jalan**: Merupakan jaringan jalan, jalan raya, dan jalur.
+ **Label jalan**: Menyediakan label teks untuk nama jalan dan nomor rute.
+ **Transit**: Menggambarkan jalur transportasi umum seperti bus, kereta api, dan kereta bawah tanah.
+ **Air**: Menampilkan badan air, termasuk danau, sungai, dan lautan.

## Kasus penggunaan
<a name="tiles-use-cases"></a>
+ Mengambil ubin peta untuk merender bagian peta yang berbeda pada berbagai tingkat zoom.
+ Mengoptimalkan permintaan petak peta berdasarkan interaksi pengguna, seperti panning dan zoom.
+ Mengakses ubin vektor atau raster untuk tujuan rendering terperinci.

## Pahami permintaannya
<a name="tiles-understand-the-request"></a>

**catatan**  
 Untuk pelanggan di `ap-southeast-1` dan`ap-southeast-5`, bidang permintaan dan respons yang didukung mungkin berbeda. Lihat [Referensi GetTile API](https://docs.aws.amazon.com/location/latest/APIReference/API_geomaps_GetTile.html) untuk detailnya. 

Permintaan memerlukan parameter berikut:`Tileset`,`X`,`Y`, dan `Z` untuk mengidentifikasi ubin tertentu yang akan diambil. `Key`Parameter dapat disertakan secara opsional untuk otorisasi.
+ **`Tileset`**: Menentukan tileset yang diinginkan untuk mengambil ubin.
+ **`X`**: Nilai sumbu X untuk ubin peta.
+ **`Y`**: Nilai sumbu Y untuk ubin peta.
+ **`Z`**: Nilai zoom, menentukan tingkat zoom untuk ubin.
+ **`Key`**: Secara opsional disertakan untuk tujuan otorisasi.

## Pahami tanggapannya
<a name="tiles-understand-the-response"></a>

Responsnya mencakup header seperti`CacheControl`,, dan `ContentType``ETag`, dan berisi data petak peta sebagai gumpalan biner dalam format MVT. Header ini mengelola kontrol cache, memberikan detail format konten, dan kontrol versi untuk ubin.
+ **`CacheControl`**: Mengontrol caching sisi klien untuk ubin peta.
+ **`ContentType`**: Menentukan format data ubin.
+ **`ETag`**: Menyediakan pengenal versi untuk ubin.
+ **`Blob`**: Berisi data ubin vektor dalam format MVT.

# Gaya peta dinamis
<a name="styling-dynamic-maps"></a>

Amazon Location Service menyediakan dua opsi untuk menata peta dinamis Anda: menggunakan Gaya Peta yang telah dirancang sebelumnya AWS atau menyesuaikan gaya peta menggunakan deskriptor gaya.

Untuk informasi selengkapnya, lihat [GetStyleDescriptor](https://docs.aws.amazon.com/location/latest/APIReference/API_geomaps_GetStyleDescriptor.html)di *Referensi API Amazon Location Service*.

## Gunakan gaya AWS peta yang telah dirancang sebelumnya
<a name="using-aws-map-styles"></a>

AWS gaya peta adalah gaya standar yang mematuhi standar industri untuk memberikan estetika profesional yang canggih. Dengan memanfaatkan gaya ini di Amazon Location Service, Anda dapat mengurangi time-to-market dan menghilangkan kebutuhan kartografer khusus untuk membuat gaya peta dari awal.

Untuk informasi selengkapnya, lihat [AWS gaya peta dan fitur](map-styles.md).

Untuk mempelajari lebih lanjut tentang gaya peta yang telah ditentukan sebelumnya, lihat:
+ [Gaya peta standar](map-styles.md#standard-map)
+ [Gaya peta monokrom](map-styles.md#monochrome-map)
+ [Gaya peta hibrida](map-styles.md#hybrid-map)
+ [Gaya peta satelit](map-styles.md#satellite-map)

## Tambahkan fitur gaya peta ke AWS peta Anda
<a name="using-aws-map-features"></a>

AWS Fitur gaya peta memungkinkan Anda untuk menyesuaikan peta Anda dengan fitur gaya canggih termasuk medan, kepadatan kontur, lalu lintas, dan hamparan truk atau transit. Opsi penyesuaian baru ini memungkinkan Anda menyesuaikan tampilan peta dengan kasus penggunaan tertentu.

Untuk informasi selengkapnya, lihat [fitur peta](https://docs.aws.amazon.com/location/latest/developerguide/maps-concepts.html).

## Manfaat menggunakan gaya AWS peta
<a name="benefits-aws-map-styles"></a>
+ **Efisiensi waktu dan sumber daya**: Gaya AWS Peta memungkinkan Anda melewati proses perancangan gaya peta yang memakan waktu dan intensif sumber daya dari awal. Ini memungkinkan Anda untuk fokus pada fungsionalitas inti sambil menyediakan peta yang menarik secara visual.
+ **Estetika profesional dan konsisten**: Kartografer yang terampil telah membuat Gaya AWS Peta dengan cermat, mengikuti praktik terbaik industri. Setiap detail, mulai dari palet warna hingga penempatan label, telah dioptimalkan untuk kejelasan dan keterbacaan.
+ **Integrasi yang mulus**: AWS Map Styles terintegrasi secara mulus dengan bahasa desain aplikasi Anda, memberikan pengalaman pemetaan yang dipoles dan konsisten bagi pengguna akhir Anda.

## Memulai dengan gaya AWS peta
<a name="getting-started-aws-map-styles"></a>
+ **Periksa penawaran gaya AWS peta**: Di konsol Amazon Location Service, navigasikan ke bagian **Peta** untuk menjelajahi gaya yang tersedia.
+ **Pilih gaya yang sesuai dengan kebutuhan Anda**: Pilih gaya yang paling sesuai dengan desain aplikasi dan persyaratan pengalaman pengguna Anda.
+ **Integrasikan gaya**: Ikuti dokumentasi yang disediakan untuk mengintegrasikan gaya yang dipilih ke dalam aplikasi Anda menggunakan Amazon Location Service APIs atau SDKs.

Pelajari lebih lanjut tentang [Cara menampilkan peta](how-to-display-a-map.md).

## Kasus penggunaan
<a name="use-cases"></a>
+ Menyesuaikan gaya peta berdasarkan skema warna seperti `Light` atau`Dark`.
+ Menampilkan peta sesuai dengan pandangan politik atau batas geografis tertentu.
+ Mengoptimalkan gaya peta untuk berbagai kasus penggunaan, seperti logistik, aktivitas luar ruangan, navigasi dengan data lalu lintas, dan perutean khusus transportasi.

## Pahami permintaannya
<a name="dynamic-understand-the-request"></a>

**catatan**  
 Untuk pelanggan di `ap-southeast-1` dan`ap-southeast-5`, bidang permintaan dan respons yang didukung mungkin berbeda. Lihat [Referensi GetStyleDescriptor API](https://docs.aws.amazon.com/location/latest/APIReference/API_geomaps_GetStyleDescriptor.html) untuk detailnya. 

Permintaan mendukung parameter seperti `ColorScheme``Key`,, dan `PoliticalView` untuk menentukan gaya peta dan presentasi. `Style`Parameter diperlukan untuk menentukan gaya peta yang diinginkan.
+ **`ColorScheme`**: Mengatur palet warna peta, seperti `Light` atau`Dark`.
+ **`PoliticalView`**: Menentukan tampilan politik untuk visualisasi peta.
+ **`Style`**: Mendefinisikan gaya peta, seperti `Standard` atau`Monochrome`.
+ **`Terrain`**: Menampilkan fitur topografi melalui shading elevasi dan penyorotan geografis.
+ **`ContourDensity`**: Menunjukkan bentuk medan dan kecuraman menggunakan garis kontur elevasi pada berbagai tingkat kepadatan.
+ **`Traffic`**: Hamparan kondisi lalu lintas waktu nyata di peta.
+ **`TravelMode`**: Menampilkan informasi transportasi termasuk sistem angkutan umum atau rute truk dengan pembatasan jalan.

## Pahami responsnya
<a name="dynamic-understand-the-response"></a>

Respons menyediakan header seperti`CacheControl`,, dan `ContentType``ETag`, dan berisi deskriptor gaya sebagai gumpalan JSON. Header memberikan informasi caching, detail format konten, dan pembuatan versi untuk perubahan gaya.
+ **`CacheControl`**: Mengontrol konfigurasi caching untuk deskriptor gaya.
+ **`ContentType`**: Menunjukkan format respons sebagai JSON.
+ **`ETag`**: Menyediakan pengenal versi untuk deskriptor gaya.
+ **`Blob`**: Berisi isi deskriptor gaya dalam format JSON.

## Sesuaikan deskriptor gaya
<a name="customizing-style-descriptor"></a>

Untuk menyesuaikan gaya peta, Anda harus memahami struktur deskriptor gaya, yang biasanya merupakan objek JSON yang mendefinisikan representasi visual elemen peta. Deskriptor gaya terdiri dari beberapa lapisan, masing-masing mengontrol gaya untuk jenis elemen peta tertentu, seperti jalan, taman, bangunan, atau label.
+ **Gunakan deskriptor gaya yang telah ditentukan sebagai basis**[: Anda dapat memulai dengan deskriptor gaya yang telah ditentukan sebelumnya atau membuatnya dari awal menggunakan editor gaya peta seperti Maputnik.](https://maputnik.github.io/)
+ **Memahami struktur**: Deskriptor gaya adalah objek JSON hierarkis yang berisi lapisan, masing-masing mewakili elemen peta yang berbeda. Setiap lapisan memiliki properti yang mengontrol tampilan visual elemen tersebut, seperti warna, opasitas, dan lebar garis.
+ **Ubah gaya untuk lapisan**: Bergantung pada editor gaya peta yang Anda gunakan, Anda dapat mengubah lapisan yang ada atau menambahkan yang baru untuk menyesuaikan gaya. Misalnya, Anda dapat menyesuaikan warna jalan, mengubah ukuran font label, atau menambahkan ikon khusus untuk lokasi tertentu.
+ **Tentukan gaya untuk tingkat zoom yang berbeda**: Editor gaya peta memungkinkan Anda menentukan gaya yang berbeda untuk tingkat zoom yang berbeda, yang berguna untuk mengontrol tingkat detail dan visibilitas berdasarkan interaksi zoom pengguna.
+ **Uji dan iterasi**: Setelah memodifikasi atau membuat deskriptor gaya, uji gaya yang disesuaikan pada peta untuk memastikannya ditampilkan sebagaimana dimaksud. Ulangi dan sesuaikan hingga Anda mencapai gaya visual yang diinginkan.

# Gaya ikonografi dengan sprite
<a name="styling-iconography-with-sprites"></a>

Sprite adalah file gambar Portable Network Graphic (PNG) yang berisi gambar raster kecil seperti ikon, spidol, dan elemen lain yang ditampilkan pada peta. Sprite dapat disesuaikan berdasarkan parameter seperti gaya, skema warna, dan varian. Amazon Location Service menyediakan sprite sheet melalui `GetSprites` API. Anda juga dapat menggunakan ikon kustom dengan memuat set ikon Anda sendiri (lihat[Cara menambahkan ikon di peta](how-to-add-icon-on-map.md)) atau menyesuaikan deskriptor gaya untuk memuat sprite kustom Anda.

Untuk informasi selengkapnya, lihat [GetSprites](https://docs.aws.amazon.com/location/latest/APIReference/API_geomaps_GetSprites.html)di *Referensi API Amazon Location Service*.

## Kasus penggunaan
<a name="use-cases"></a>
+ Merender elemen peta kustom menggunakan lembar sprite untuk gaya dan skema warna tertentu.
+ Mengambil sprite untuk berbagai gaya peta seperti Standard, Monochrome, atau Hybrid.
+ Menyesuaikan ikonografi pada peta dengan memodifikasi sprite.

## Pahami permintaannya
<a name="styling-understand-the-request"></a>

Permintaan membutuhkan parameter URI seperti`ColorScheme`,`FileName`, dan`Style`. Parameter ini memungkinkan penyesuaian lembar sprite berdasarkan skema warna peta, gaya, dan file sprite tertentu yang diperlukan.
+ **`ColorScheme`**: Mendefinisikan skema warna untuk sprite, seperti “Light” atau “Dark”.
+ **`FileName`**: Nama file sprite untuk diambil, yang bisa berupa file PNG atau JSON.
+ **`Style`**: Menentukan gaya peta, seperti “Standar” atau “Monokrom”.

## Pahami tanggapannya
<a name="styling-understand-the-response"></a>

Respons berisi header seperti`CacheControl`,, dan `ContentType``ETag`, dan mengembalikan data sprite baik sebagai gumpalan biner atau file JSON. Header ini menyediakan informasi caching, jenis konten respons, dan kontrol versi untuk data sprite.
+ **`CacheControl`**: Konfigurasi cache untuk file sprite.
+ **`ContentType`**: Format respons, menunjukkan apakah itu berisi data PNG atau JSON.
+ **`ETag`**: Identifier untuk versi sprite, digunakan untuk validasi cache.
+ **`Blob`**: Berisi isi lembar sprite atau file offset JSON.

------
#### [ Standard Light ]

![\[Collection of colorful icons representing various services and concepts in cloud computing.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/styling-standard-light.png)


------
#### [ Standard Dark ]

![\[Collection of colorful icons and shapes representing various services and concepts.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/styling-standard-dark.png)


------
#### [ Monochrome Light ]

![\[Collection of various icons and shapes representing different concepts and services.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/styling-monochrome-light.png)


------
#### [ Monochrome Dark ]

![\[Collection of various icons and shapes representing different concepts and services.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/styling-monochrome-dark.png)


------
#### [ Hybrid ]

![\[Collection of colorful icons representing various travel, transportation, and service symbols.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/styling-hybrid.png)


------

# Label gaya dengan mesin terbang
<a name="styling-labels-with-glyphs"></a>

Glyphs adalah file biner yang berisi karakter Unicode yang dikodekan, yang digunakan oleh perender peta untuk menampilkan label. Amazon Location Service memungkinkan pengambilan glyph tertentu dari tumpukan font untuk digunakan dalam rendering peta melalui API. `GetGlyphs`

Untuk informasi selengkapnya, lihat [GetGlyphs](https://docs.aws.amazon.com/location/latest/APIReference/API_geomaps_GetGlyphs.html)di *Referensi API Amazon Location Service*.

## Kasus penggunaan
<a name="glyphs-use-cases"></a>
+ Merender teks khusus pada peta dengan font dan gaya tertentu.
+ Mengambil mesin terbang untuk rendering teks peta yang dilokalkan.
+ Menggunakan rentang karakter Unicode untuk menampilkan label dan simbol peta.
+ Mengoptimalkan rendering font peta berdasarkan tumpukan font dan rentang mesin terbang.

## Font yang didukung di API
<a name="supported-fonts"></a>

Font berikut didukung di API:
+ Amazon Ember Bold
+ Amazon Ember Bold Italic
+ Amazon Ember Bold, Noto Sans Bold
+ Amazon Ember Bold, Noto Sans Bold, Noto Sans Arabic Bold
+ Amazon Ember RC Kental BdItalic
+ Amazon Ember Kental RC Bold
+ Amazon Ember Kental RC Bold Italic
+ Amazon Ember Kental RC Bold, Noto Sans Bold
+ Amazon Ember Kental RC Bold, Noto Sans Bold, Noto Sans Arabic Condensed Bold
+ Lampu RC Terkondensasi Amazon Ember
+ Lampu RC Terkondensasi Amazon Ember Miring
+ Amazon Ember RC Kental LtItalic
+ Amazon Ember Kental RC Reguler
+ Amazon Ember Kental RC Regular Italic
+ Amazon Ember Kental RC Reguler, Noto Sans Reguler
+ Amazon Ember Kental RC Reguler, Noto Sans Reguler, Noto Sans Arab Terkondensasi Reguler
+ Amazon Ember RC Kental RgItalic
+ Amazon Ember RC Kental ThItalic
+ Amazon Ember Kental RC Tipis
+ Amazon Ember Kental RC Tipis Miring
+ Amazon Ember Berat
+ Amazon Ember Heavy Italic
+ Lampu Amazon Ember
+ Amazon Ember Light Italic
+ Amazon Ember Sedang
+ Amazon Ember Medium Italic
+ Amazon Ember Medium, Tidak Ada Sedang
+ Amazon Ember Medium, Noto Sans Medium, Noto Sans Media Arab
+ Amazon Ember Reguler
+ Amazon Ember Reguler Italic
+ Amazon Ember Reguler Italic, Noto Sans Italic
+ Amazon Ember Reguler Italic, Noto Sans Italic, Noto Sans Arabic Reguler
+ Amazon Ember Reguler, Noto Sans Reguler
+ Amazon Ember Reguler, Noto Sans Reguler, Noto Sans Arab Reguler
+ Amazon Ember Tipis
+ Amazon Ember Tipis Miring
+ AmazonEmberCdRC\$1BD
+ AmazonEmberCdRC\$1 BdIt
+ AmazonEmberCdRC\$1lt
+ AmazonEmberCdRC\$1 LtIt
+ AmazonEmberCdRC\$1rg
+ AmazonEmberCdRC\$1 RgIt
+ AmazonEmberCdRC\$1th
+ AmazonEmberCdRC\$1 ThIt
+ AmazonEmber\$1Bd
+ AmazonEmber\$1BdIt
+ AmazonEmber\$1Dia
+ AmazonEmber\$1HeIt
+ AmazonEmber\$1Lt
+ AmazonEmber\$1LtIt
+ AmazonEmber\$1Md
+ AmazonEmber\$1MdIt
+ AmazonEmber\$1Rg
+ AmazonEmber\$1RgIt
+ AmazonEmber\$1Th
+ AmazonEmber\$1ThIt
+ Noto Sans Hitam
+ Noto Sans Hitam Italic
+ Noto Sans Bold
+ Noto Sans Bold Italic
+ Noto Sans Ekstra Bold
+ Noto Sans Extra Bold Italic
+ Cahaya Ekstra Noto Sans
+ Noto Sans Extra Light Italic
+ Noto Sans Italic
+ Noto Sans Light
+ Noto Sans Light Italic
+ Noto Sans Medium
+ Noto Sans Medium Italic
+ Noto Sans Reguler
+ Noto Sans Semi Berani
+ Noto Sans Semi Bold Italic
+ Noto Sans Tipis
+ Noto Sans Tipis Italic
+ NotoSans-Tebal
+ NotoSans-Miring
+ NotoSans-Sedang
+ NotoSans-Reguler
+ Buka Tanpa Reguler, Arial Unicode MS Reguler

## Pahami permintaannya
<a name="glyphs-understand-the-request"></a>

Permintaan menerima dua parameter URI yang diperlukan, `FontStack` dan`FontUnicodeRange`, yang menentukan font dan rentang Unicode untuk mesin terbang. `FontStack`Parameter menentukan font mana yang akan digunakan, sedangkan `FontUnicodeRange` mendefinisikan rentang karakter untuk diambil. Permintaan tidak menyertakan badan, hanya berfokus pada parameter URI untuk fungsinya.
+ **`FontStack`**: Menentukan nama tumpukan font untuk mengambil. Contoh: “Amazon Ember Bold, Noto Sans Bold”.
+ **`FontUnicodeRange`**: Rentang karakter Unicode untuk mengunduh mesin terbang. Rentang harus kelipatan 256. Contoh: “0-255".

## Pahami responsnya
<a name="glyphs-understand-the-response"></a>

Respons mengembalikan data mesin terbang sebagai gumpalan biner, bersama dengan header HTTP untuk caching, tipe konten, dan informasi harga. ETag Data mesin terbang dikembalikan sebagai gumpalan biner untuk dirender di peta, dan header menyediakan metadata tambahan untuk menangani respons secara efektif.
+ **`CacheControl`**: Menginstruksikan klien tentang konfigurasi caching untuk respons.
+ **`ContentType`**: Menentukan format badan respon, menunjukkan jenis data glyph dikembalikan.
+ **`ETag`**: Pengidentifikasi untuk versi mesin terbang, digunakan untuk validasi cache.
+ **`PricingBucket`**: Menunjukkan tingkat harga yang terkait dengan permintaan.
+ **`Blob`**: Data glyph dikembalikan sebagai gumpalan biner, digunakan untuk membuat teks peta.

# Peta statis
<a name="static-maps"></a>

**catatan**  
Peta statis hanya mendukung gaya Standar dan Satelit. Untuk informasi selengkapnya, lihat [AWS gaya peta dan fitur](map-styles.md).

Peta statis menawarkan representasi data geografis yang telah dirender sebelumnya dengan opsi untuk melapisi penanda (atau pin), rute, dan area poligon, sesuai kebutuhan untuk aplikasi Anda. Peta Statis memungkinkan Anda menghasilkan gambar peta statis (non-interaktif) berdasarkan parameter dan input data yang dapat disesuaikan. Dengan menyesuaikan overlay, bentuk, atau menerapkan gaya kustom, Static Map memungkinkan Anda membuat visualisasi peta yang memenuhi kebutuhan spesifik, meningkatkan pengalaman pengguna akhir dan mengkomunikasikan informasi geografis secara efektif. Server menyesuaikan gambar peta yang diminta dan mengirimkannya ke klien sebagai file JPEG. Anda dapat secara terprogram meminta dan menghasilkan gambar peta yang disesuaikan dengan kebutuhan spesifik Anda.

*GetStaticMap API* menghasilkan gambar statis peta berdasarkan parameter tertentu seperti koordinat tengah, kotak pembatas, atau overlay. API memungkinkan penyesuaian fitur dan gaya peta, memungkinkan penggunaan dalam aplikasi web atau seluler tanpa fungsionalitas peta interaktif.

Untuk informasi selengkapnya, lihat [GetStaticMap](https://docs.aws.amazon.com/location/latest/APIReference/API_geomaps_GetStaticMap.html)di *Referensi API Amazon Location Service*.

Misalnya permintaan, tanggapan, cURL, dan perintah CLI untuk API ini, lihat [Cara](https://docs.aws.amazon.com/location/latest/developerguide/static-maps-how-to.html) menggunakan peta Statis.

## Kasus penggunaan umum
<a name="static-maps-use-cases"></a>
+ **Peta tertanam di web atau aplikasi seluler:** Gambar peta statis dapat disematkan secara efisien di situs web atau aplikasi seluler untuk memberikan visualisasi lokasi, rute, atau tempat menarik dengan peta non-interaktif, mengurangi waktu muat dan penggunaan data. Contohnya termasuk mesin pencari (seperti Yahoo) yang menampilkan gambar peta dengan hasil pencarian POIs.
+ **Detail lokasi dalam email:** Gambar peta statis dapat digunakan untuk berbagi informasi lokasi melalui email untuk membantu pengguna akhir Anda memahami konteks email. Misalnya, aplikasi pengiriman makanan atau berbagi perjalanan menggunakan gambar peta statis untuk menampilkan lokasi penjemputan/pengantaran, rute, atau area sekitarnya dalam email pasca-perjalanan atau pengiriman yang berisi tagihan dan ringkasan.
+ **Materi pemasaran dan dokumen cetak:** Gambar peta statis yang disesuaikan dapat dimasukkan ke dalam brosur, selebaran, atau materi cetak lainnya, memberikan representasi informasi geografis yang menarik secara visual yang relevan dengan konten.

## Pahami permintaannya
<a name="static-maps-understanding-request"></a>

Permintaan mencakup parameter URI opsional`BoundedPositions`, seperti`BoundingBox`,`Center`, dan, antara lain, untuk menentukan area yang terlihat dan hamparan peta. Parameter `Height` dan `Width` diperlukan untuk menentukan ukuran gambar. Untuk mempelajari selengkapnya, lihat [Sesuaikan peta statis](customizing-static-maps.md) dan [Hamparan pada peta statis](overlaying-static-map.md).
+ `BoundedPositions`: Koordinat untuk mencakup dalam gambar.
+ `BoundingBox`: Koordinat yang mendefinisikan tepi barat daya dan timur laut peta.
+ `Height`: Menentukan ketinggian gambar.
+ `Width`: Menentukan lebar gambar.
+ `GeoJsonOverlay`: Objek GeoJSON yang valid untuk menambahkan overlay.

## Pahami tanggapannya
<a name="static-maps-understanding-response"></a>

Respons berisi header seperti`CacheControl`,, dan `ContentType``ETag`, dan mengembalikan peta statis sebagai gumpalan biner baik dalam format JPEG atau PNG. Header menyediakan metadata seperti kontrol cache, jenis konten, dan versi untuk gambar statis.
+ `CacheControl`: Menentukan konfigurasi caching untuk gambar peta.
+ `ContentType`: Menunjukkan format gambar peta (JPEG atau PNG).
+ `ETag`: Pengidentifikasi untuk versi gambar peta statis.
+ `Blob`: Merupakan gambar peta dalam format JPEG atau PNG.

# Sesuaikan peta statis
<a name="customizing-static-maps"></a>

**catatan**  
Peta statis hanya mendukung gaya Satelit. Untuk informasi selengkapnya, lihat [AWS gaya peta dan fitur](map-styles.md).

Bagian ini memberikan gambaran umum tentang cara menyesuaikan peta statis yang dihasilkan menggunakan Amazon Location Service. Ini mencakup berbagai fitur, seperti menyesuaikan posisi peta, ukuran, bahasa, skala, hamparan, dan atribusi, memungkinkan Anda untuk menyesuaikan peta dengan kebutuhan spesifik Anda.

Untuk informasi selengkapnya, lihat [GetStaticMap](https://docs.aws.amazon.com/location/latest/APIReference/API_geomaps_GetStaticMap.html)di *Referensi API Amazon Location Service*.

## Posisi
<a name="customizing-static-maps-position"></a>

Posisi ini memungkinkan Anda untuk menentukan pusat dan batas peta. Anda dapat mengontrol fokus peta dengan mengatur koordinat tengah, kotak pembatas, atau menggunakan tingkat zoom untuk menentukan berapa banyak area yang akan ditampilkan. Untuk mempelajari cara kerjanya, lihat[Cara mendapatkan peta statis dari posisi tertentu](get-static-map-specific-position.md).
+ `Center`: Mendefinisikan titik tengah peta menggunakan koordinat bujur dan lintang.
+ `Radius`: Menentukan radius (jarak dari pusat) yang akan ditampilkan pada peta statis.
+ `Bounding Box`: Mendefinisikan area persegi panjang peta, diatur dengan menyediakan koordinat sudut kiri atas dan kanan bawah.
+ `Zoom`: Mengontrol tingkat zoom peta. Tingkat zoom yang lebih tinggi menunjukkan lebih banyak detail di area yang lebih kecil, sementara tingkat zoom yang lebih rendah menunjukkan lebih sedikit detail di area yang lebih luas.

## Dimensi dan kualitas
<a name="customizing-static-maps-dimension-quality"></a>

Anda dapat menyesuaikan ukuran dan kualitas visual peta statis dengan menentukan dimensinya (tinggi dan lebar) dan menambahkan padding untuk presentasi penanda dan elemen lainnya yang lebih baik. Untuk mempelajari cara kerjanya, lihat[Cara mendapatkan peta statis dari dimensi tertentu](get-static-map-specific-dimension.md).
+ `Height and Width`: Menentukan ukuran gambar peta statis dengan mendefinisikan tinggi dan lebar dalam piksel.
+ `Padding`: Menambahkan ruang ekstra di sekitar tepi peta, memungkinkan visualisasi yang lebih baik saat menempatkan spidol, garis, atau bentuk.

## Penskalaan
<a name="customizing-static-maps-scale"></a>

Skala memberikan kontrol atas skala peta dan mendefinisikan satuan (kilometer, mil) untuk mengukur jarak. Ini berguna untuk merepresentasikan hubungan ukuran dan jarak peta secara akurat. Untuk mempelajari cara kerjanya, lihat[Cara menambahkan skala untuk peta statis](add-scale-static-map.md).
+ `Scale Unit`: Mendefinisikan unit untuk bilah skala peta (misalnya, kilometer atau mil), memungkinkan pengguna untuk mengukur jarak secara akurat di peta.

## Hamparan
<a name="customizing-static-maps-overlay"></a>

Anda dapat menambahkan spidol, garis untuk menunjukkan rute, poligon untuk menampilkan area, dan banyak lagi. Untuk mempelajari cara kerjanya, lihat[Cara menambahkan penanda ke peta statis](add-marker-static-map.md),[Cara menambahkan garis ke peta statis](how-to-add-line-static.md), atau[Cara menambahkan rute ke peta statis](how-to-add-route.md).

# Hamparan pada peta statis
<a name="overlaying-static-map"></a>

Bagian ini menjelaskan cara melapisi informasi tambahan ke peta statis menggunakan Amazon Location Service. Anda dapat menyesuaikan peta statis Anda dengan menambahkan berbagai fitur geografis, seperti titik, garis, dan poligon, untuk meningkatkan representasi visual peta. Amazon Location Service mendukung berbagai format, termasuk GeoJSON dan format overlay yang ringkas, untuk menyediakan cara menambahkan overlay yang fleksibel dan efisien.

Untuk informasi selengkapnya, lihat [GetStaticMap](https://docs.aws.amazon.com/location/latest/APIReference/API_geomaps_GetStaticMap.html)di *Referensi API Amazon Location Service*.

## Dengan GeoJSON
<a name="overlaying-static-map-geojson"></a>

GeoJSON adalah format serbaguna yang memungkinkan Anda untuk melapisi data khusus pada peta statis. Dengan mendefinisikan fitur geografis seperti titik, garis, dan poligon, Anda dapat meningkatkan representasi visual peta Anda, memberikan konteks yang berharga bagi pengguna. GeoJSON didukung secara luas dan menawarkan fleksibilitas dalam hal penataan dan penyesuaian hamparan peta, menjadikannya format yang ideal untuk menampilkan wilayah, merencanakan rute, atau menunjukkan hubungan spasial.

Dengan Amazon Location Service, Anda dapat memanfaatkan GeoJSON untuk menambahkan fitur dinamis berbasis lokasi langsung ke peta statis Anda. Ini memungkinkan Anda untuk membuat overlay yang sangat dapat disesuaikan yang dapat disesuaikan untuk memenuhi kebutuhan bisnis spesifik Anda. GeoJSON mendukung beberapa jenis geometri, `Point` termasuk,,`LineString`, `MultiPolygon` dan`Polygon`, memungkinkan Anda menampilkan berbagai fitur, mulai dari penanda dan rute hingga representasi area yang kompleks.

## Warna
<a name="overlaying-static-map-geojson-colors"></a>

Saat menata fitur GeoJSON, Anda memiliki fleksibilitas dalam menentukan warna. Anda dapat menentukan warna menggunakan format yang berbeda, seperti nilai heksadesimal (seperti \$1ff0000 untuk merah) atau dengan transparansi alfa (seperti \$1ff000080 untuk merah semi-transparan). Ini memastikan overlay Anda dapat konsisten secara visual dengan gaya peta. Jika tidak ada warna yang ditentukan, warna default untuk gaya peta yang dipilih akan diterapkan.

## Urutan menggambar
<a name="overlaying-static-map-drawing-order"></a>

Hamparan khusus digambar dalam urutan tertentu untuk menjaga kejelasan dan menghindari kekacauan visual. Di Amazon Location Service, fitur overlay seperti poligon, garis, dan titik akan muncul di atas peta dasar, tetapi di bawah label peta. Urutan gambar memprioritaskan poligon terlebih dahulu, diikuti oleh garis, dan kemudian titik atau spidol.

## Satuan pengukuran
<a name="overlaying-static-map-measurement-units"></a>

Untuk properti seperti `width` dan`outline-width`, Anda dapat menggunakan unit pengukuran yang berbeda untuk menentukan ukuran, termasuk piksel (px), meter (m), kilometer (km), mil (mi), dan persentase (%). Unit persentase menyesuaikan properti relatif terhadap nilai default, memberikan lebih banyak fleksibilitas dalam menata overlay Anda.

## Jenis geometri
<a name="overlaying-static-map-geometry-types"></a>

Amazon Location Service mendukung beberapa jenis geometri GeoJSON, `Point` seperti`LineString`,,, dan. `Polygon` `MultiPolygon` Setiap jenis geometri dapat ditata dan disesuaikan menggunakan objek properti di GeoJSON, memungkinkan penyesuaian ekstensif penanda, rute, dan area di peta Anda.

## Dengan overlay kompak
<a name="overlaying-static-map-compact-overlay"></a>

**catatan**  
Overlay kompak mendukung jenis geometri berikut: titik, garis, dan poligon. Itu tidak mendukung`multiPoint`,`multiLine`, atau`multiPolgyon`.

Opsi overlay ringkas memungkinkan Anda menampilkan beberapa geometri secara efisien pada peta statis dengan menggunakan satu parameter kueri. Pendekatan yang disederhanakan ini menyederhanakan format permintaan dan mengurangi ukuran permintaan, sehingga lebih mudah untuk mengirimkan data overlay. Pelanggan dapat memasukkan berbagai jenis geometri dan properti gaya yang sesuai dalam satu parameter kueri, dan Amazon Location Service akan menangani pengangkatan berat dengan mengurai dan merender overlay seperti yang ditentukan.

Saat menggunakan format overlay ringkas, perlu diingat bahwa ada batasan ukuran URL permintaan. Meskipun Amazon Location Service mengoptimalkan kueri, pastikan permintaan Anda tetap dalam batas yang wajar, terutama saat menangani beberapa geometri dan properti terkaitnya.

## Format
<a name="overlaying-static-map-compact-overlay-format"></a>

Format overlay ringkas disusun sebagai berikut: `geometry_type:geometry;property_1=value_1;property_2=value_2|geometry_type:geometry;property_1=value_1...`

Setiap jenis geometri didefinisikan bersama dengan sifat gayanya. Beberapa geometri dipisahkan oleh operator pipa (\$1), dan properti untuk setiap geometri dipisahkan menggunakan titik koma.

## Jenis geometri yang didukung
<a name="overlaying-static-map-supported-geometry-types"></a>

Amazon Location Service mendukung beberapa jenis geometri, termasuk`Point`,,`MultiPoint`, `LineString``Polygon`, dan`MultiPolygon`. Jenis geometri ini dapat digabungkan dan ditata dalam parameter kueri yang sama menggunakan format overlay ringkas.

## Properti styling
<a name="overlaying-static-map-styling-properties"></a>

Setiap geometri dapat disesuaikan menggunakan berbagai sifat gaya, seperti warna, warna garis besar, ukuran, dan banyak lagi. Properti ini memungkinkan Anda untuk mengontrol tampilan setiap geometri pada peta, memastikan bahwa overlay selaras dengan kebutuhan bisnis Anda.

# Bagaimana caranya
<a name="maps-how-to"></a>

Bagian ini berisi berbagai cara panduan dan contoh cara menggunakan Peta APIs.

**Topics**
+ [Cara menggunakan peta dinamis](dynamic-maps-how-to.md)
+ [Cara menggunakan peta statis](static-maps-how-to.md)

# Cara menggunakan peta dinamis
<a name="dynamic-maps-how-to"></a>

Topik how-to ini menawarkan panduan komprehensif yang mengajarkan Anda cara meningkatkan aplikasi pemetaan Anda menggunakan Amazon Location Service. Dari menampilkan peta interaktif hingga menambahkan penanda, garis, dan poligon, tutorial ini menunjukkan cara memanfaatkan fitur-fitur penting seperti mengatur kontrol peta, menambahkan ikon khusus, dan menangani data waktu nyata. Selain itu, topik juga mencakup aspek lokalisasi dan internasionalisasi, seperti pengaturan bahasa pilihan, menyesuaikan pandangan politik, dan memastikan kepatuhan terhadap undang-undang daerah dengan menyesuaikan konten peta berdasarkan lokasi atau perspektif pengguna.

Setiap cara dirancang agar dapat diakses, dengan step-by-step instruksi untuk mengimplementasikan fitur-fitur ini dalam aplikasi web menggunakan MapLibre GL JS. Apakah tujuan Anda adalah membangun pengalaman peta dinamis dengan ikon dan popup khusus atau untuk menyesuaikan tampilan peta untuk perspektif dan bahasa politik tertentu, contoh-contoh ini akan membantu Anda mencapai tujuan sekaligus memastikan pengalaman pemetaan yang kaya dan terlokalisasi bagi pengguna di berbagai wilayah. Tutorial ini memastikan bahwa Anda dapat sepenuhnya memanfaatkan kemampuan Amazon Location Service, mulai dari fungsi pemetaan dasar hingga kebutuhan geopolitik dan lokalisasi yang kompleks.

**Topics**
+ [Cara menampilkan peta](how-to-display-a-map.md)
+ [Cara menambahkan kontrol pada peta](how-to-add-control-on-map.md)
+ [Cara menambahkan spidol di peta](how-to-add-marker-on-map.md)
+ [Cara menambahkan ikon di peta](how-to-add-icon-on-map.md)
+ [Cara menambahkan garis di peta](how-to-add-line-on-map.md)
+ [Cara menambahkan poligon di peta](how-to-add-polygon-on-map.md)
+ [Cara menambahkan popup ke peta](how-to-add-popup-to-map.md)
+ [Cara mengatur bahasa pilihan untuk peta](how-to-set-preferred-language-map.md)
+ [Cara mengatur tampilan politik peta](how-to-set-political-view-map.md)
+ [Cara memfilter POI di peta](how-to-filter-poi-map.md)
+ [Cara membuat peta topografi](how-to-create-topographic-maps.md)
+ [Cara menampilkan lalu lintas waktu nyata di peta](how-to-set-real-time-traffic-map.md)
+ [Cara membuat peta logistik](how-to-create-logistic-map.md)
+ [Cara menampilkan detail transit di peta](how-to-show-transit-details-map.md)
+ [Cara membuat peta 3D](how-to-create-a-3d-map.md)

# Cara menampilkan peta
<a name="how-to-display-a-map"></a>

Amazon Location Service memungkinkan Anda menampilkan peta interaktif dan non-interaktif menggunakan gaya peta kami. Lihat [AWS gaya peta dan fitur](map-styles.md) untuk mempelajari selengkapnya.

## Peta interaktif
<a name="interactive-map"></a>

Dalam contoh ini, Anda akan menampilkan peta interaktif yang memungkinkan pengguna untuk memperbesar, menggeser, mencubit, dan melempar.

### Contoh kode peta interaktif
<a name="interactive-map-web-code"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Display a map</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div id="map"></div>
        <script>
            const apiKey = "<API_KEY>";
            const mapStyle = "Standard"; // e.g., Standard, Monochrome, Hybrid, Satellite
            const awsRegion = "eu-central-1"; // e.g., us-east-2, us-east-1, us-west-2, etc.
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

            const map = new maplibregl.Map({
                container: 'map', // container id
                style: styleUrl, // style URL
                center: [25.24, 36.31], // starting position [lng, lat]
                zoom: 2, // starting zoom
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------

## Batasi panning peta di luar suatu area
<a name="restrict-map-panning"></a>

Dalam contoh ini, Anda akan membatasi peta agar tidak digeser melampaui batas yang ditentukan.

### Batasi contoh kode panning peta
<a name="restrict-map-panning-web-code"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Display a map</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div id="map"></div>
        <script>
            const apiKey = "<API_KEY>";
            const mapStyle = "Standard"; // e.g., Standard, Monochrome, Hybrid, Satellite
            const awsRegion = "eu-central-1"; // e.g., us-east-2, us-east-1, us-west-2, etc.
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

            var bounds = [
                [90.0, -21.943045533438166], // Southwest coordinates
                [146.25, 31.952162238024968] // Northeast coordinates
            ];

            const map = new maplibregl.Map({
                container: 'map', // container id
                style: styleUrl, // style URL
                maxBounds: bounds, // Sets bounds of SE Asia
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------

## Peta non-interaktif
<a name="non-interactive-map"></a>

Dalam contoh ini, Anda akan menampilkan peta non-interaktif dengan menonaktifkan interaksi pengguna.

### Contoh kode peta non-interaktif
<a name="non-interactive-map-web-code"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Display a map</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div id="map"></div>
        <script>
            const apiKey = "<API_KEY>";
            const mapStyle = "Standard"; // e.g., Standard, Monochrome, Hybrid, Satellite
            const awsRegion = "eu-central-1"; // e.g., us-east-2, us-east-1, us-west-2, etc.
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

            const map = new maplibregl.Map({
                container: 'map', // container id
                style: styleUrl, // style URL
                center: [25.24, 36.31], // starting position [lng, lat]
                zoom: 2, // starting zoom
                interactive: false, // Disable pan & zoom handlers
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------

# Cara menambahkan kontrol pada peta
<a name="how-to-add-control-on-map"></a>

Amazon Location Service memungkinkan Anda menambahkan beberapa kontrol ke peta, termasuk kontrol navigasi, geolokasi, layar penuh, skala, dan atribusi.
+ **Kontrol navigasi**: Berisi tombol zoom dan kompas.
+ **Kontrol geolocate**: Menyediakan tombol yang menggunakan API geolokasi browser untuk menemukan pengguna di peta.
+ **Kontrol layar penuh**: Berisi tombol untuk mengaktifkan peta masuk dan keluar dari mode layar penuh.
+ **Kontrol skala**: Menampilkan rasio jarak pada peta dengan jarak yang sesuai di tanah.
+ **Kontrol atribusi**: Menyajikan informasi atribusi peta. Secara default, kontrol atribusi diperluas (terlepas dari lebar peta).

Anda dapat menambahkan kontrol ke setiap sudut peta: kiri atas, kiri bawah, kanan bawah, atau kanan atas.

## Menambahkan kontrol peta
<a name="add-map-controls"></a>

Dalam contoh berikut, Anda akan menambahkan kontrol peta yang tercantum di atas.

### Contoh kode kontrol peta
<a name="web-code-example"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Map Controls</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div id="map"></div>
        <script>
            const apiKey = "<API_KEY>";
            const mapStyle = "Standard"; // e.g., Standard, Monochrome, Hybrid, Satellite
            const awsRegion = "eu-central-1"; // e.g., us-east-2, us-east-1, us-west-2, etc.
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

            const map = new maplibregl.Map({
                container: 'map', // container id
                style: styleUrl, // style URL
                center: [-123.13203602550998, 49.28726257639254], // starting position [lng, lat]
                zoom: 10, // starting zoom
                attributionControl: false, // hide default attributionControl in bottom left
            });

            // Adding controls to the map
            map.addControl(new maplibregl.NavigationControl()); // Zoom and rotation controls
            map.addControl(new maplibregl.FullscreenControl()); // Fullscreen control
            map.addControl(new maplibregl.GeolocateControl()); // Geolocation control
            map.addControl(new maplibregl.AttributionControl(), 'bottom-left'); // Attribution in bottom-left
            map.addControl(new maplibregl.ScaleControl(), 'bottom-right'); // Scale control in bottom-right
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------

## Kiat pengembang
<a name="developer-tips"></a>

### Opsi kontrol navigasi
<a name="navigationcontrol-options"></a>

```
new maplibregl.NavigationControl({ 
    showCompass: true, // show or hide compass (default: true)
    showZoom: true // show or hide zoom controls (default: true)
});
```

### Opsi kontrol geolokasi
<a name="geolocatecontrol-options"></a>

```
new maplibregl.GeolocateControl({ 
    positionOptions: { enableHighAccuracy: true }, // default: false
    trackUserLocation: true // default: false
});
```

### Opsi kontrol atribusi
<a name="attributioncontrol-options"></a>

```
new maplibregl.AttributionControl({
    compact: true, // compact (collapsed) mode (default: false)
});
```

### Opsi kontrol skala
<a name="scalecontrol-options"></a>

```
new maplibregl.ScaleControl({ 
    maxWidth: 100, // width of the scale (default: 50)
    unit: 'imperial' // imperial or metric (default: metric)
});
```

### Opsi kontrol layar penuh
<a name="fullscreencontrol-options"></a>

```
map.addControl(new maplibregl.FullscreenControl({
    container: document.querySelector('body') // container for fullscreen mode
}));
```

# Cara menambahkan spidol di peta
<a name="how-to-add-marker-on-map"></a>

Dengan Lokasi Amazon, Anda dapat menambahkan penanda tetap dan dapat diseret, dan Anda juga dapat menyesuaikan warna penanda berdasarkan data dan preferensi Anda.

## Tambahkan penanda tetap
<a name="add-marker"></a>

### Contoh kode penanda tetap
<a name="web-code-example-fixed-marker"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Add marker on a map</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div id="map"></div>
        <script>
            const apiKey = "<API_KEY>";
            const mapStyle = "Standard";  // e.g., Standard, Monochrome, Hybrid, Satellite  
            const awsRegion = "eu-central-1"; // e.g., us-east-2, us-east-1, us-west-2, etc.
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

            const map = new maplibregl.Map({
                container: 'map', // container id
                style: styleUrl, // style URL
                center: [0, 0], // starting position [lng, lat]
                zoom: 1, // starting zoom
            });

            const marker = new maplibregl.Marker() // Create fixed marker
                .setLngLat([85.1376, 25.5941]) // Set coordinates [long, lat] for marker (e.g., Patna, BR, IN)
                .addTo(map); // Add marker to the map
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------

## Tambahkan penanda yang dapat diseret
<a name="add-draggable-marker"></a>

### Contoh kode penanda yang dapat diseret
<a name="web-code-example-draggable-marker"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Add draggable marker on a map</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div id="map"></div>
        <script>
            const apiKey = "<API_KEY>";
            const mapStyle = "Standard";  // e.g., Standard, Monochrome, Hybrid, Satellite  
            const awsRegion = "eu-central-1"; // e.g., us-east-2, us-east-1, us-west-2, etc.
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

            const map = new maplibregl.Map({
                container: 'map', // container id
                style: styleUrl, // style URL
                center: [0, 0], // starting position [lng, lat]
                zoom: 1, // starting zoom
            });

            const marker = new maplibregl.Marker({ draggable: true }) // Create draggable marker
                .setLngLat([85.1376, 25.5941]) // Set coordinates [long, lat] for marker (e.g., Patna, BR, IN)
                .addTo(map); // Add marker to the map
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------

## Mengubah warna penanda
<a name="change-marker-color"></a>

### Contoh kode penanda berwarna-warni
<a name="web-code-example-change-marker-color"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Adding colorful marker on a map</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div id="map"></div>
        <script>
            const apiKey = "<API_KEY>";
            const mapStyle = "Monochrome";  // e.g., Standard, Monochrome, Hybrid, Satellite  
            const awsRegion = "eu-central-1"; // e.g., us-east-2, us-east-1, us-west-2, etc.
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

            const map = new maplibregl.Map({
                container: 'map', // container id
                style: styleUrl, // style URL
                center: [0, 0], // starting position [lng, lat]
                zoom: 1, // starting zoom
            });

            const marker = new maplibregl.Marker({ color: "black" }) // Create colored marker
                .setLngLat([85.1376, 25.5941]) // Set coordinates [long, lat] for marker (e.g., Patna, BR, IN)
                .addTo(map); // Add marker to the map
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------

## Tambahkan beberapa spidol
<a name="add-multiple-markers"></a>

### Beberapa contoh kode penanda
<a name="web-code-example-multiple-markers"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Adding multiple markers on a map</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div id="map"></div>
        <script>
            const apiKey = "<API_KEY>";
            const mapStyle = "Standard";  // e.g., Standard, Monochrome, Hybrid, Satellite  
            const awsRegion = "eu-central-1"; // e.g., us-east-2, us-east-1, us-west-2, etc.
            const colorScheme ="Dark"; // e.g., Dark, Light (default)
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?color-scheme=${colorScheme}&key=${apiKey}`;

            const map = new maplibregl.Map({
                container: 'map', // container id
                style: styleUrl, // style URL
                center: [0, 0], // starting position [lng, lat]
                zoom: 1, // starting zoom
            });

            const locations = [
                { lng: 85.1376, lat: 25.5941, label: 'Patna', color: '#FF5722' }, 
                { lng: 77.1025, lat: 28.7041, label: 'Delhi', color: '#2196F3' }, 
                { lng: 77.5946, lat: 12.9716, label: 'Bangalore', color: '#FF9800' }, 
                { lng: 78.4867, lat: 17.3850, label: 'Hyderabad', color: '#9C27B0' }, 
                { lng: -87.6298, lat: 41.8781, label: 'Chicago', color: '#4CAF50' }, 
                { lng: -122.3321, lat: 47.6062, label: 'Seattle', color: '#FFC107' }, 
                { lng: 4.3517, lat: 50.8503, label: 'Brussels', color: '#3F51B5' },   
                { lng: 2.3522, lat: 48.8566, label: 'Paris', color: '#E91E63' },   
                { lng: -0.1276, lat: 51.5074, label: 'London', color: '#795548' },  
                { lng: 28.0473, lat: -26.2041, label: 'Johannesburg', color: '#673AB7' },  
                { lng: -123.1216, lat: 49.2827, label: 'Vancouver', color: '#FF5722' }, 
                { lng: -104.9903, lat: 39.7392, label: 'Denver', color: '#FF9800' }, 
                { lng: -97.7431, lat: 30.2672, label: 'Austin', color: '#3F51B5' }  
            ];

            // Loop through the locations array and add a marker for each one
            locations.forEach(location => {           
                const marker = new maplibregl.Marker({ color: location.color, draggable: true }) // Create colored marker
                    .setLngLat([location.lng, location.lat]) // Set longitude and latitude
                    .addTo(map); // Add marker to the map
            }); 
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------

# Cara menambahkan ikon di peta
<a name="how-to-add-icon-on-map"></a>

Amazon Location Service memungkinkan Anda menambahkan ikon, sebaiknya dalam format PNG, ke peta. Anda dapat menambahkan ikon ke geolokasi tertentu dan menatanya sesuai kebutuhan.

## Tambahkan ikon statis
<a name="add-static-icon"></a>

Dalam contoh ini, Anda akan menggunakan URL eksternal untuk menambahkan ikon ke peta menggunakan layer simbol.

### Contoh kode ikon statis
<a name="web-code-example-static-icon"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Static icon on map</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div id="map"></div>
        <script>
            const apiKey = "<API_KEY>";
            const mapStyle = "Standard";  // e.g., Standard, Monochrome, Hybrid, Satellite  
            const awsRegion = "eu-central-1"; // e.g., us-east-2, us-east-1, us-west-2, etc.
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

            const map = new maplibregl.Map({
                container: 'map', // container id
                style: styleUrl, // style URL
                center: [-123.1144289, 49.2806672], // starting position [lng, lat] (e.g., Vancouver)
                zoom: 12, // starting zoom
            });

            map.on('load', async () => {
                image = await map.loadImage('https://upload.wikimedia.org/wikipedia/commons/1/1e/Biking_other.png');
                map.addImage('biking', image.data);
                map.addSource('point', {
                    'type': 'geojson',
                    'data': {
                        'type': 'FeatureCollection',
                        'features': [
                            {
                                'type': 'Feature',
                                'geometry': {
                                    'type': 'Point',
                                    'coordinates': [-123.1144289, 49.2806672]
                                }
                            }
                        ]
                    }
                });
                map.addLayer({
                    'id': 'points',
                    'type': 'symbol',
                    'source': 'point',
                    'layout': {
                        'icon-image': 'biking',
                        'icon-size': 0.25
                    }
                });
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------

# Cara menambahkan garis di peta
<a name="how-to-add-line-on-map"></a>

Dengan Amazon Location Service, Anda dapat menambahkan kedua jejak GPS yang direkam sebelumnya sebagai line-string dan jejak GPS real-time ke peta dinamis.

## Menambahkan baris yang direkam sebelumnya
<a name="add-pre-recorded-line"></a>

Dalam contoh ini, Anda akan menambahkan jejak GPS pra-rekaman sebagai GeoJSON (main.js) ke peta dinamis. Untuk melakukannya, Anda perlu menambahkan sumber (seperti GeoJSON) dan lapisan dengan gaya garis pilihan Anda ke peta. 

### Contoh kode baris yang direkam sebelumnya
<a name="web-code-example-pre-recorded-line"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Add a line on the map</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
        <script src='main.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div id="map"></div>
        <script>
            const apiKey = "<API_KEY>";
            const mapStyle = "Standard";
            const awsRegion = "eu-central-1";
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

            const map = new maplibregl.Map({
                container: 'map',
                style: styleUrl,
                center: [-123.126575, 49.290585],
                zoom: 12.5
            });

            map.on('load', () => {
                map.addSource('vancouver-office-to-stanley-park-route', {
                    type: 'geojson',
                    data: routeGeoJSON
                });

                map.addLayer({
                    id: 'vancouver-office-to-stanley-park-route',
                    type: 'line',
                    source: 'vancouver-office-to-stanley-park-route',
                    layout: {
                        'line-cap': 'round',
                        'line-join': 'round'
                    },
                    paint: {
                        'line-color': '#008296',
                        'line-width': 2
                    }
                });
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------
#### [ main.js ]

```
const routeGeoJSON = {
    type: "FeatureCollection",
    features: [
        {
            type: "Feature",
            geometry: {
                type: "LineString",
                coordinates: [
                    [-123.117011, 49.281306],
                    [-123.11785, 49.28011],
                    ...
                    [-123.135735, 49.30106]
                ]
            },
            properties: {
                name: "Amazon YVR to Stanley Park",
                description: "An evening walk from Amazon office to Stanley Park."
            }
        }
    ]
};
```

------

## Tambahkan baris secara real-time
<a name="add-real-time-line"></a>

Dalam contoh ini, Anda akan mensimulasikan penambahan koordinat GPS baru satu per satu untuk membuat jejak GPS real-time. Ini berguna untuk melacak pembaruan data waktu nyata.

### Contoh kode baris waktu nyata
<a name="web-code-example-real-time-line"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Add a line on the map in real-time</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
        <script src='main.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div id="map"></div>
        <script>
            const apiKey = "<API_KEY>";
            const mapStyle = "Standard";
            const awsRegion = "eu-central-1";
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

            const map = new maplibregl.Map({
                container: 'map',
                style: styleUrl,
                center: [-123.126575, 49.290585],
                zoom: 12.5
            });

            map.on('load', () => {
                const coordinates = routeGeoJSON.features[0].geometry.coordinates;
                routeGeoJSON.features[0].geometry.coordinates = [coordinates[0], coordinates[20]];

                map.addSource('vancouver-office-to-stanley-park-route', {
                    type: 'geojson',
                    data: routeGeoJSON
                });

                map.addLayer({
                    id: 'vancouver-office-to-stanley-park-route',
                    type: 'line',
                    source: 'vancouver-office-to-stanley-park-route',
                    layout: {
                        'line-cap': 'round',
                        'line-join': 'round'
                    },
                    paint: {
                        'line-color': '#008296',
                        'line-width': 2
                    }
                });

                map.jumpTo({center: coordinates[0], zoom: 14});
                map.setPitch(30);

                let i = 0;
                const timer = window.setInterval(() => {
                    if (i < coordinates.length) {
                        routeGeoJSON.features[0].geometry.coordinates.push(coordinates[i]);
                        map.getSource('vancouver-office-to-stanley-park-route').setData(routeGeoJSON);
                        map.panTo(coordinates[i]);
                        i++;
                    } else {
                        window.clearInterval(timer);
                    }
                }, 100);
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------
#### [ main.js ]

```
const routeGeoJSON = {
    type: "FeatureCollection",
    features: [
        {
            type: "Feature",
            geometry: {
                type: "LineString",
                coordinates: [
                    [-123.117011, 49.281306],
                    [-123.11785, 49.28011],
                    ...
                    [-123.135735, 49.30106]
                ]
            },
            properties: {
                name: "Amazon YVR to Stanley Park",
                description: "An evening walk from Amazon office to Stanley Park."
            }
        }
    ]
};
```

------

## Kiat pengembang
<a name="developer-tips"></a>

**Batas pemasangan:** Anda dapat menyesuaikan garis dengan batas peta dengan menghitung batas koordinat garis:

```
const coordinates = routeGeoJSON.features[0].geometry.coordinates;
const bounds = coordinates.reduce((bounds, coord) => bounds.extend(coord), new maplibregl.LngLatBounds(coordinates[0], coordinates[0]));
map.fitBounds(bounds, { padding: 20 });
```

# Cara menambahkan poligon di peta
<a name="how-to-add-polygon-on-map"></a>

Amazon Location Service memungkinkan Anda menambahkan poligon ke peta. Anda dapat menata poligon berdasarkan kebutuhan bisnis Anda, termasuk menambahkan gaya isian dan batas.

## Tambahkan poligon
<a name="add-polygon"></a>

Dalam contoh ini, Anda akan menambahkan poligon ke peta dan menatanya dengan warna isian dan batas.

### Contoh kode poligon
<a name="web-code-example-polygon"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Overlay a Polygon on a Map</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
        <script src='main.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div id="map"></div>
        <script>
            const apiKey = "<API_KEY>";
            const mapStyle = "Standard";
            const awsRegion = "eu-central-1";
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

            const map = new maplibregl.Map({
                container: 'map',
                style: styleUrl,
                center: [-123.13203602550998, 49.28726257639254],
                zoom: 16
            });

            map.on('load', () => {
                map.addSource('barclayHeritageSquare', {
                    type: 'geojson',
                    data: barclayHeritageSquare
                });

                map.addLayer({
                    id: 'barclayHeritageSquare-fill',
                    type: 'fill',
                    source: 'barclayHeritageSquare',
                    layout: {},
                    paint: {
                        'fill-color': '#008296',
                        'fill-opacity': 0.25
                    }
                });

                map.addLayer({
                    id: 'barclayHeritageSquare-outline',
                    type: 'line',
                    source: 'barclayHeritageSquare',
                    layout: {},
                    paint: {
                        'line-color': '#008296',
                        'line-width': 2
                    }
                });
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------
#### [ main.js ]

```
const barclayHeritageSquare = {
    "type": "FeatureCollection",
    "features": [
        {
            "type": "Feature",
            "properties": {
                "park_id": 200,
                "park_name": "Barclay Heritage Square",
                "area_ha": 0.63255076039675,
                "park_url": "http://covapp.vancouver.ca/parkfinder/parkdetail.aspx?inparkid=200"
            },
            "geometry": {
                "type": "MultiPolygon",
                "coordinates": [
                    [
                        [-123.1320948511985, 49.287379401361406],
                        [-123.13179672786798, 49.2871908081159],
                        [-123.13148154587924, 49.28739992437733],
                        [-123.1313830551372, 49.28733617069321],
                        [-123.13118648745055, 49.287208851500054],
                        [-123.13128257706838, 49.28714532642171],
                        [-123.13147941881572, 49.28727228533418],
                        ...
                        [-123.13177619357138, 49.28759081706052],
                        [-123.1320948511985, 49.287379401361406]
                    ]
                ]
            }
        }
    ]
};
```

------

# Cara menambahkan popup ke peta
<a name="how-to-add-popup-to-map"></a>

Amazon Location Service memungkinkan Anda menambahkan popup ke peta. Anda dapat menambahkan popup sederhana, popup yang dipicu klik pada penanda, popup yang dipicu oleh hover, dan popup untuk beberapa penanda. 

## Tambahkan popup pertama Anda
<a name="add-first-popup"></a>

Dalam contoh ini, Anda akan menambahkan popup pertama Anda.

### Contoh kode popup pertama
<a name="first-popup-web"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Display a map</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div id="map"></div>
        <script>
            const apiKey = "<API_KEY>";
            const mapStyle = "Standard";
            const awsRegion = "eu-central-1";
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

            const map = new maplibregl.Map({
                container: 'map',
                style: styleUrl,
                center: [-96, 37.8],
                zoom: 2
            });

            const popup = new maplibregl.Popup({closeOnClick: false})
                .setLngLat([-96, 37.8])
                .setHTML('<h1>Hello USA!</h1>')
                .addTo(map);
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------

## Tampilkan popup pada klik pada penanda
<a name="show-popup-on-click"></a>

Dalam contoh ini, Anda akan melampirkan popup ke penanda dan menampilkannya saat klik.

### Contoh klik popup pada penanda
<a name="click-popup-web"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Display a map</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div id="map"></div>
        <script>
            const apiKey = "<API_KEY>";
            const mapStyle = "Standard";
            const awsRegion = "eu-central-1";
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

            const centralpark_nyc = [-73.966,40.781];
            const map = new maplibregl.Map({
                container: 'map',
                style: styleUrl,
                center: centralpark_nyc,
                zoom: 13
            });

            const popup = new maplibregl.Popup({offset: 25}).setText(
                'Central Park, NY is one of the most filmed locations in the world, appearing in over 240 feature films since 1908.'
            );

            new maplibregl.Marker()
                .setLngLat(centralpark_nyc)
                .setPopup(popup)
                .addTo(map);
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------

## Tampilkan popup saat mengarahkan kursor pada spidol
<a name="show-popup-on-hover"></a>

Dalam contoh ini, Anda akan melampirkan popup ke spidol dan menampilkannya di hover.

### Popup pada penanda hover contoh
<a name="hover-popup-web"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Display a map</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div id="map"></div>
        <script>
            const apiKey = "<API_KEY>";
            const mapStyle = "Standard";
            const awsRegion = "eu-central-1";
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

            const centralpark_nyc = [-73.966,40.781];
            const map = new maplibregl.Map({
                container: 'map',
                style: styleUrl,
                center: centralpark_nyc,
                zoom: 13
            });

            const marker = new maplibregl.Marker().setLngLat([-73.968285, 40.785091]).addTo(map);
            const popup = new maplibregl.Popup({ offset: 25 })
                .setHTML("<h3>Central Park</h3><p>Welcome to Central Park, NYC!</p>");

            const markerElement = marker.getElement();
            markerElement.addEventListener('mouseenter', () => {
                popup.setLngLat([-73.968285, 40.785091]).addTo(map);
            });
            markerElement.addEventListener('mouseleave', () => {
                popup.remove();
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------

## Tampilkan popup pada klik pada beberapa penanda
<a name="popup-on-multiple-markers"></a>

Dalam contoh ini, Anda akan melampirkan popup ke beberapa penanda dan menampilkannya saat klik.

### Popup pada klik pada beberapa penanda contoh
<a name="popup-on-multiple-markers-code"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Display a map</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div id="map"></div>
        <script>
            const apiKey = "Your API Key";
            const mapStyle = "Monochrome";  
            const awsRegion = "eu-central-1";
            const colorScheme ="Light";
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?color-scheme=${colorScheme}&key=${apiKey}`;

            const map = new maplibregl.Map({
                container: 'map', 
                style: styleUrl, 
                center: [-123.126979, 49.2841563],
                zoom: 15,
                minZoom: 13,
                maxZoom: 17
            });

            const locations = [
                { id: 1, lat: 49.281108, lng: -123.117049, name: "Amazon - YVR11 office" },
                { id: 2, lat: 49.285580, lng: -123.115806, name: "Amazon - YVR20 office" },
                { id: 3, lat: 49.281661, lng: -123.114174, name: "Amazon - YVR14 office" },
                { id: 4, lat: 49.280663, lng: -123.114379, name: "Amazon - YVR26 office" },
                { id: 5, lat: 49.285343, lng: -123.129119, name: "Amazon - YVR25 office" }
            ];

            const geojson = {
                type: "FeatureCollection",
                features: locations.map(location => ({
                    type: "Feature",
                    properties: { id: location.id, name: location.name },
                    geometry: {
                        type: "Point",
                        coordinates: [location.lng, location.lat]
                    }
                }))
            };
            
            map.on('load', async () => {
                try {
                    const image = await loadImage('https://upload.wikimedia.org/wikipedia/commons/thumb/9/93/Amazon_Web_Services_Logo.svg/1200px-Amazon_Web_Services_Logo.svg.png');
                    map.addImage('aws', image);

                    map.addSource('places', { type: 'geojson', data: geojson });

                    map.addLayer({
                        'id': 'places',
                        'type': 'symbol',
                        'source': 'places',
                        'layout': {
                            'icon-image': 'aws',
                            'icon-size': 0.025,
                            'icon-allow-overlap': true
                        }
                    });

                    const popup = new maplibregl.Popup({ closeButton: false, closeOnClick: false });

                    map.on('click', 'places', (e) => {
                        map.getCanvas().style.cursor = 'pointer';
                        const coordinates = e.features[0].geometry.coordinates.slice();
                        const name = e.features[0].properties.name;
                        popup.setLngLat(coordinates).setHTML(name).addTo(map);
                    });

                    map.on('mouseleave', 'places', () => {
                        map.getCanvas().style.cursor = '';
                        popup.remove();
                    });
                } catch (error) {
                    console.error('Error loading image:', error);
                }
            });

            async function loadImage(url) {
                return new Promise((resolve, reject) => {
                    const img = new Image();
                    img.crossOrigin = 'anonymous';
                    img.onload = () => resolve(img);
                    img.onerror = (error) => reject(error);
                    img.src = url;
                });
            }
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------

## Tampilkan popup saat mengarahkan kursor pada beberapa spidol
<a name="popup-on-hover-multiple-markers"></a>

Dalam contoh ini, Anda akan melampirkan popup ke beberapa spidol dan menampilkannya di hover.

### Popup pada hover pada beberapa penanda contoh
<a name="popup-on-hover-multiple-markers-code"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Display a map</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body>
        <!-- Map container --> 
        <div id="map" style="width: 100%; height: 100vh;"></div>
        <script>
            const apiKey = "You API Key";
            const mapStyle = "Monochrome";  // eg. Standard, Monochrome, Hybrid, Satellite  
            const awsRegion = "eu-central-1"; // eg. us-east-2, us-east-1, etc.
            const colorScheme ="Light"; // eg Dark, Light (default)
            const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?color-scheme=${colorScheme}&key=${apiKey}`;

            // Initialize the map
            const map = new maplibregl.Map({
                container: 'map', // Container id
                style: styleUrl, // Style URL
                center: [-123.126979, 49.2841563], // Starting position [lng, lat]
                zoom: 15, // Starting zoom
                minZoom: 13, // Minimum zoom level
                maxZoom: 17 // Maximum zoom level
            });

            const locations = [
                { id: 1, lat: 49.281108, lng: -123.117049, name: "Amazon - YVR11 office" },
                { id: 2, lat: 49.285580, lng: -123.115806, name: "Amazon - YVR20 office" },
                { id: 3, lat: 49.281661, lng: -123.114174, name: "Amazon - YVR14 office" },
                { id: 4, lat: 49.280663, lng: -123.114379, name: "Amazon - YVR26 office" },
                { id: 5, lat: 49.285343, lng: -123.129119, name: "Amazon - YVR25 office" }
            ];

            // Convert locations to GeoJSON
            const geojson = {
                type: "FeatureCollection",
                features: locations.map(location => ({
                    type: "Feature",
                    properties: { 
                        id: location.id,
                        name: location.name // Use the name property for popup
                    },
                    geometry: {
                        type: "Point",
                        coordinates: [location.lng, location.lat] // GeoJSON uses [lng, lat]
                    }
                }))
            };
            
            // Add the GeoJSON source and layers when the map loads
            map.on('load', async () => {
                try {
                    // Load the PNG image for the marker
                    const image = await loadImage('https://upload.wikimedia.org/wikipedia/commons/thumb/9/93/Amazon_Web_Services_Logo.svg/1200px-Amazon_Web_Services_Logo.svg.png'); // Ensure this URL points to a valid PNG
                    map.addImage('aws', image);

                    // Add a GeoJSON source
                    map.addSource('places', {
                        type: 'geojson',
                        data: geojson
                    });

                    // Add a layer showing the places with custom icons
                    map.addLayer({
                        'id': 'places',
                        'type': 'symbol',
                        'source': 'places',
                        'layout': {
                            'icon-image': 'aws',
                            'icon-size': 0.025, // Adjust as needed
                            'icon-allow-overlap': true // Allow icons to overlap
                        }
                    });

                    // Create a popup
                    const popup = new maplibregl.Popup({
                        closeButton: false,
                        closeOnClick: false
                    });

                    // Event handlers for mouse enter and leave
                    map.on('mouseenter', 'places', (e) => {
                        map.getCanvas().style.cursor = 'pointer';
                        const coordinates = e.features[0].geometry.coordinates.slice();
                        const name = e.features[0].properties.name;

                        // Set popup content and position
                        popup.setLngLat(coordinates).setHTML(name).addTo(map);
                    });

                    map.on('mouseleave', 'places', () => {
                        map.getCanvas().style.cursor = '';
                        popup.remove();
                    });
                } catch (error) {
                    console.error('Error loading image:', error);
                }
            });

            // Helper function to load the image
            async function loadImage(url) {
                return new Promise((resolve, reject) => {
                    const img = new Image();
                    img.crossOrigin = 'anonymous'; // Enable CORS
                    img.onload = () => resolve(img);
                    img.onerror = (error) => reject(error);
                    img.src = url;
                });
            }
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; } 
html, body, #map { height: 100%; }
```

------

# Cara mengatur bahasa pilihan untuk peta
<a name="how-to-set-preferred-language-map"></a>

Amazon Location Service memungkinkan Anda mengatur bahasa pilihan di sisi klien dengan memperbarui deskriptor gaya untuk bahasa tertentu. Anda dapat mengatur bahasa pilihan dan menampilkan konten dalam bahasa yang disematkan. Kalau tidak, itu akan kembali ke bahasa lain.

**catatan**  
Untuk informasi selengkapnya, lihat [Lokalisasi dan internasionalisasi](maps-localization-internationalization.md).

## Tetapkan bahasa pilihan ke bahasa Jepang dan tampilkan peta Jepang
<a name="set-preferred-language-japanese"></a>

Dalam contoh ini, Anda akan mengatur gaya pembaruan untuk menampilkan label peta dalam bahasa Jepang (ja).

### Tetapkan bahasa pilihan ke contoh bahasa Jepang
<a name="set-preferred-language-japanese-example"></a>

------
#### [ index.html ]

```
<html>
<head>
    <link href="https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css" rel="stylesheet" />
    <script src="https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js"></script>
    <link href="style.css" rel="stylesheet" />
    <script src="main.js"></script>
</head>
<body>
    <div id="map" />
    <script>
        const apiKey = "Add Your Api Key";
        const mapStyle = "Standard";
        const awsRegion = "eu-central-1";
        const initialLocation = [139.76694, 35.68085]; //Japan   
        
        async function initializeMap() {
            // get updated style object for preferred language. 
            const styleObject = await getStyleWithPreferredLanguage("ja");
            // Initialize the MapLibre map with the fetched style object
            const map = new maplibregl.Map({
                container: 'map',
                style: styleObject,
                center: initialLocation,
                zoom: 15,
                hash:true,
            });
            map.addControl(new maplibregl.NavigationControl(), "top-left");
        
            return map; 
        }
  
        initializeMap();
    </script>
</body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; }
#map { height: 100vh; }
```

------
#### [ main.js ]

```
async function getStyleWithPreferredLanguage(preferredLanguage) {
    const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

    return fetch(styleUrl)
        .then(response => {
            if (!response.ok) {
                throw new Error('Network response was not ok ' + response.statusText);
            }
            return response.json();
        })
        .then(styleObject => {
            if (preferredLanguage !== "en") {
                styleObject = setPreferredLanguage(styleObject, preferredLanguage);
            }

            return styleObject;
        })
        .catch(error => {
            console.error('Error fetching style:', error);
        });
}

const setPreferredLanguage = (style, language) => {
    let nextStyle = { ...style };

    nextStyle.layers = nextStyle.layers.map(l => {
        if (l.type !== 'symbol' || !l?.layout?.['text-field']) return l;
        return updateLayer(l, /^name:([A-Za-z\-\_]+)$/g, `name:${language}`);
    });

    return nextStyle;
};

const updateLayer = (layer, prevPropertyRegex, nextProperty) => {
    const nextLayer = {
        ...layer,
        layout: {
            ...layer.layout,
            'text-field': recurseExpression(
                layer.layout['text-field'],
                prevPropertyRegex,
                nextProperty
            )
        }
    };
    return nextLayer;
};

const recurseExpression = (exp, prevPropertyRegex, nextProperty) => {
    if (!Array.isArray(exp)) return exp;
    if (exp[0] !== 'coalesce') return exp.map(v =>
        recurseExpression(v, prevPropertyRegex, nextProperty)
    );

    const first = exp[1];
    const second = exp[2];

    let isMatch =
    Array.isArray(first) &&
    first[0] === 'get' &&
    !!first[1].match(prevPropertyRegex)?.[0];

    isMatch = isMatch && Array.isArray(second) && second[0] === 'get';
    isMatch = isMatch && !exp?.[4];

    if (!isMatch) return exp.map(v =>
        recurseExpression(v, prevPropertyRegex, nextProperty)
    );

    return [
        'coalesce',
        ['get', nextProperty],
        ['get', 'name:en'],
        ['get', 'name']
    ];
};
```

------

## Tetapkan bahasa pilihan berdasarkan bahasa browser pengguna akhir
<a name="set-preferred-language-browser"></a>

Dalam contoh ini, Anda akan mengatur gaya pembaruan untuk menampilkan label peta dalam bahasa perangkat pengguna. 

### Tetapkan bahasa pilihan berdasarkan contoh bahasa browser
<a name="set-preferred-language-browser-code"></a>

------
#### [ index.html ]

```
<html>
<head>
    <link href="https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css" rel="stylesheet" />
    <script src="https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js"></script>
    <link href="style.css" rel="stylesheet" />
    <script src="main.js"></script>
</head>
<body>
    <div id="map" />
    <script>
        const apiKey = "Add Your Api Key";
        const mapStyle = "Standard";
        const awsRegion = "eu-central-1";
        const initialLocation = [139.76694, 35.68085]; //Japan     
        const userLanguage = navigator.language || navigator.userLanguage;
        const languageCode = userLanguage.split('-')[0];

        async function initializeMap() {
             const styleObject = await getStyleWithPreferredLanguage(languageCode);
             const map = new maplibregl.Map({
                 container: 'map',
                 style: styleObject,
                 center: initialLocation,
                 zoom: 15,
                 hash:true,
             });
             map.addControl(new maplibregl.NavigationControl(), "top-left");
             return map; 
        }

        initializeMap();
    </script>
</body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; }
#map { height: 100vh; }
```

------
#### [ main.js ]

```
async function getStyleWithPreferredLanguage(preferredLanguage) {
    const styleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

    return fetch(styleUrl)
        .then(response => {
            if (!response.ok) {
                throw new Error('Network response was not ok ' + response.statusText);
            }
            return response.json();
        })
        .then(styleObject => {
            if (preferredLanguage !== "en") {
                styleObject = setPreferredLanguage(styleObject, preferredLanguage);
            }

            return styleObject;
        })
        .catch(error => {
            console.error('Error fetching style:', error);
        });
}

const setPreferredLanguage = (style, language) => {
    let nextStyle = { ...style };

    nextStyle.layers = nextStyle.layers.map(l => {
        if (l.type !== 'symbol' || !l?.layout?.['text-field']) return l;
        return updateLayer(l, /^name:([A-Za-z\-\_]+)$/g, `name:${language}`);
    });

    return nextStyle;
};

const updateLayer = (layer, prevPropertyRegex, nextProperty) => {
    const nextLayer = {
        ...layer,
        layout: {
            ...layer.layout,
            'text-field': recurseExpression(
                layer.layout['text-field'],
                prevPropertyRegex,
                nextProperty
            )
        }
    };
    return nextLayer;
};

const recurseExpression = (exp, prevPropertyRegex, nextProperty) => {
    if (!Array.isArray(exp)) return exp;
    if (exp[0] !== 'coalesce') return exp.map(v =>
        recurseExpression(v, prevPropertyRegex, nextProperty)
    );

    const first = exp[1];
    const second = exp[2];

    let isMatch =
    Array.isArray(first) &&
    first[0] === 'get' &&
    !!first[1].match(prevPropertyRegex)?.[0];

    isMatch = isMatch && Array.isArray(second) && second[0] === 'get';
    isMatch = isMatch && !exp?.[4];

    if (!isMatch) return exp.map(v =>
        recurseExpression(v, prevPropertyRegex, nextProperty)
    );

    return [
        'coalesce',
        ['get', nextProperty],
        ['get', 'name:en'],
        ['get', 'name']
    ];
};
```

------

# Cara mengatur tampilan politik peta
<a name="how-to-set-political-view-map"></a>

Amazon Location Service memungkinkan Anda mengatur tampilan politik untuk memastikan aplikasi Anda mematuhi hukum setempat. Anda dapat mengatur pandangan politik dan membandingkan peta dari perspektif politik yang berbeda.

**catatan**  
Untuk informasi selengkapnya, lihat [Lokalisasi dan internasionalisasi](maps-localization-internationalization.md).

## Tetapkan pandangan politik dan bandingkan dengan perspektif internasional
<a name="set-political-view"></a>

Dalam contoh ini, Anda akan membuat dan membandingkan peta dari dua pandangan politik yang berbeda: perspektif internasional dan pandangan Turki tentang Siprus.

### Contoh perbandingan pandangan politik
<a name="set-political-view-compare-code"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Display a map</title>
        <meta property="og:description" content="Initialize a map in an HTML element with MapLibre GL JS." />
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
        <link rel='stylesheet' href='style.css' />
        <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
        <script src="https://unpkg.com/@mapbox/mapbox-gl-sync-move@0.3.1"></script>
        <script src='main.js'></script>
    </head>
    <body>
        <!-- Map container -->
        <div class="maps">
        <div id="internationalView"></div>
        <div id="turkeyView"></div>
        </div>
        <script>

            const apiKey = "Add Your Api Key";
            const mapStyle = "Standard";
            const awsRegion = "eu-central-1";

            // International perspective without political-view query parameter
            const internationalViewMapStyleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`;

            // Turkey perspective with political-view query parameter
            const turkeyViewMapStyleUrl = `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?political-view=TUR&key=${apiKey}`;

            const internationalViewMap = new maplibregl.Map({
                container: 'internationalView', // container id
                style: internationalViewMapStyleUrl, // style URL
                center: [33.0714561, 35.1052139], // starting position [lng, lat]
                zoom: 7.5,
                validateStyle: false, // Disable style validation for faster map load
            });

            const turkeyViewMap = new maplibregl.Map({
                container: 'turkeyView', // container id
                style: turkeyViewMapStyleUrl, // style URL
                center: [33.0714561, 35.1052139],
                zoom: 7.5,
                validateStyle: false, // Disable style validation for faster map load
            });

            // Sync map zoom and center
            syncMaps(internationalViewMap, turkeyViewMap);

            // Informational popup for international view
            new maplibregl.Popup({closeOnClick: false})
                .setLngLat([33, 35.5])
                .setHTML('<h4>International view <br> recognizes <br> Cyprus</h4>')
                .addTo(internationalViewMap);

            // Informational popup for Turkey's view
            new maplibregl.Popup({closeOnClick: false})
                .setLngLat([33, 35.5])
                .setHTML('<h4>Turkey does not <br> recognize <br> Cyprus</h4>')
                .addTo(turkeyViewMap);
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body { height: 100%; }
#internationalView, #turkeyView { height: 100%; width: 100%; }
.maps {
    display: flex;
    width: 100%;
    height: 100%;
}
```

------

# Cara memfilter POI di peta
<a name="how-to-filter-poi-map"></a>

Amazon Location Service memungkinkan Anda memilih kategori POI (point-of-interest) yang relevan dengan kasus penggunaan Anda. Pelajari lebih lanjut tentang gaya peta standar, [Rich POI](https://docs.aws.amazon.com/location/latest/developerguide/standard-map-style.html#rich-poi) 

## Filter POI
<a name="test-collapse-me"></a>

Dalam contoh ini, Anda menampilkan peta interaktif yang memungkinkan pengguna untuk memfilter pada kategori POI.

------
#### [ Index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>POI demo</title>
        <meta property="og:description" content="" />
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <link rel="stylesheet" href="https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css" />
        <link rel='stylesheet' href='style.css' />
        <script src="https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js"></script>

    </head>
    <body>

        <div id="map"></div>
        <ul id="buttons"></ul>
        <script>
            // -------------------------------------------------------------------------------------------
            // Function to set layer state
            // -------------------------------------------------------------------------------------------

            const initialLayerState = {
                Buildings: {
                    layers: ['poi_900_areas_buildings'],
                    visibility: 'visible'
                },
                'Business & Services': {
                    layers: ['poi_700_business_services'],
                    visibility: 'visible'
                },
                Shopping: { layers: ['poi_600_shopping'], visibility: 'visible' },
                'Leisure & Outdoors': {
                    layers: ['poi_550_leisure_outdoor'],
                    visibility: 'visible'
                },
                Facilities: { layers: ['poi_800_facilities'], visibility: 'visible' },
                Transit: { layers: ['poi_400_transit'], visibility: 'visible' },
                'Sights & Museums': {
                    layers: ['poi_300_sights_museums'],
                    visibility: 'visible'
                },
                'Food & Drink': {
                    layers: ['poi_100_food_drink'],
                    visibility: 'visible'
                },
                'Going Out & Entertainment': {
                    layers: ['poi_200_going_out_entertainment'],
                    visibility: 'visible'
                },
                Accommodations: {
                    layers: ['poi_500_accommodations'],
                    visibility: 'visible'
                },
                Parks: { layers: ['poi_landuse_park'], visibility: 'visible' },
                'Public Complexes': {
                    layers: ['poi_landuse_public_complex'],
                    visibility: 'visible'
                }
            };

            // -------------------------------------------------------------------------------------------
            // Setup auth and state
            // -------------------------------------------------------------------------------------------

            let state = { ...initialLayerState };

                const API_KEY = "<api key>"; // check how to create api key for Amazon Location
                const AWS_REGION = "eu-central-1"; // Replace with your AWS region

                const mapStyle = "Standard";
                const colorScheme = "Light";


            // Style URL
            const styleUrl = `https://maps.geo.${AWS_REGION}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${API_KEY}&color-scheme=${colorScheme}`;


            // Render the map with the stylesheet
            map = new maplibregl.Map({
                container: 'map',
                style: styleUrl,
                center: [-73.966148, 40.781803],
                zoom: 17
            });

            const buttonContainer = document.getElementById('buttons');

            for (const category of Object.keys(state)) {
                const newButton = document.createElement('li');
                newButton.classList.add('button');
                newButton.classList.add('active');
                newButton.id = category;

                // Each config has a label
                newButton.textContent = category;

                // On click, we want to switch the value between 'on' and 'off'
                // We could check the config for available options in more complex cases
                newButton.onclick = () => {
                    onClickCategory(category);
                };

                // Append the button to our button container
                buttonContainer.appendChild(newButton);
            }

            // -------------------------------------------------------------------------------------------
            // LAYER VISIBILITY FUNCTION
            // -------------------------------------------------------------------------------------------

            // On click, get the stylesheet, update the language, and set the style
            const onClickCategory = category => {
                const categoryState = state[category];
                const { visibility, layers } = categoryState;

                let nextState;

                // For active button styling
                const activeButton = document.getElementById(category);

                if (visibility === 'visible') {
                    nextState = 'none';
                    activeButton.classList.remove('active');
                } else {
                    nextState = 'visible';
                    activeButton.classList.add('active');
                }

                layers.forEach(id =>
                    map.setLayoutProperty(id, 'visibility', nextState)
                );

                state[category].visibility = nextState;
            };
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body {
    margin: 0;
    padding: 0;
}
html,
body,
#map {
    height: 100%;
}


#buttons {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: absolute;
    top: 0;
    min-width: 100px;
    max-height: calc(100% - 2rem);
    overflow: auto;
    padding: 1rem;
    background-color: white;
    margin: 0;
}

.button {
    display: inline-block;
    cursor: pointer;
    padding: 8px;
    border-radius: 3px;
    margin-top: 10px;
    font-size: 12px;
    text-align: center;
    color: #fff;
    background: #8a8a8a;
    font-family: sans-serif;
    font-weight: bold;
}

.button:first-child {
    margin-top: 0;
}

.active {
    background: #ee8a65;
}
```

------

# Cara membuat peta topografi
<a name="how-to-create-topographic-maps"></a>

Amazon Location Service memungkinkan Anda membuat peta topografi menggunakan fitur kepadatan Terrain dan Contour untuk memvisualisasikan perubahan elevasi dan karakteristik geografis.

## Tampilkan Hillshade
<a name="show-hillshade"></a>

Fitur Terrain memungkinkan Anda memvisualisasikan Hillshade, perubahan ketinggian, dan fitur geografis terkait.

### Contoh Hillshade
<a name="hillshade-example"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Terrain Map</title>
        <meta charset='utf-8'>
            <meta name="viewport" content="width=device-width, initial-scale=1">
                <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
                <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body style="margin: 0; padding: 0;">
        <div id="map" style="width: 100%; height: 100vh;"></div>
        <script>
            const apiKey = "Add Your Api Key";
            const mapStyle = "Standard";
            const awsRegion = "us-east-1";

            const map = new maplibregl.Map({
                container: 'map',
                style: `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?terrain=Hillshade&key=${apiKey}`,
                center: [-119.5383, 37.8651], // Yosemite coordinates for terrain visibility
                zoom: 12,
                validateStyle: false, // Disable style validation for faster map load
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------

## Tampilkan elevasi dengan garis Kepadatan Kontur
<a name="show-contour-density"></a>

Amazon Location Service memungkinkan Anda menambahkan fitur Contour Density ke peta Anda. Ini memberikan visualisasi kecuraman geografis dan perubahan ketinggian.

### Contoh Kepadatan Kontur
<a name="contour-density-example"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Contour Map</title>
        <meta charset='utf-8'>
            <meta name="viewport" content="width=device-width, initial-scale=1">
                <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
                <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body style="margin: 0; padding: 0;">
        <div id="map" style="width: 100%; height: 100vh;"></div>
        <script>
            const apiKey = "Add Your Api Key";
            const mapStyle = "Standard";
            const awsRegion = "us-east-1";

            const map = new maplibregl.Map({
                container: 'map',
                style: `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?contour-density=Medium&key=${apiKey}`,
                center: [-119.3047, 37.7887], 
                zoom: 12,
                validateStyle: false, // Disable style validation for faster map load
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------

## Tampilkan garis Hillshade dan Contour Density
<a name="show-hillshade-contour"></a>

Dengan Amazon Location Service, Anda dapat menggabungkan fitur Hillshade dan Contour Density di peta Anda untuk visualisasi medan yang komprehensif. Ini memberikan persepsi kedalaman yang ditingkatkan dan pemahaman lengkap tentang variasi topografi dan karakteristik medan.

### Contoh Hillshade dengan Contour Density
<a name="hillshade-contour-example"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Hillshade and Contour Map</title>
        <meta charset='utf-8'>
            <meta name="viewport" content="width=device-width, initial-scale=1">
                <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
                <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body style="margin: 0; padding: 0;">
        <div id="map" style="width: 100%; height: 100vh;"></div>
        <script>
            const apiKey = "Add Your Api Key";
            const mapStyle = "Standard";
            const awsRegion = "us-east-1";

            const map = new maplibregl.Map({
                container: 'map',
                style: `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?contour-density=Medium&terrain=Hillshade&key=${apiKey}`,
                center: [-119.3047, 37.7887],
                zoom: 12,
                validateStyle: false, // Disable style validation for faster map load
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body { margin: 0; padding: 0; }
html, body, #map { height: 100%; }
```

------

# Cara menampilkan lalu lintas waktu nyata di peta
<a name="how-to-set-real-time-traffic-map"></a>

 Menggunakan Amazon Location Service, Anda dapat menambahkan fitur lalu lintas ke peta Anda. Ini menyediakan data lalu lintas real-time untuk menunjukkan kondisi lalu lintas saat ini seperti kemacetan jalan saat ini, konstruksi, dan insiden, membantu Anda membuat pilihan perutean.

## Buat peta dengan lalu lintas waktu nyata
<a name="how-to-set-real-time-traffic"></a>

Contoh ini menunjukkan cara membuat peta dengan data lalu lintas real-time.

### Contoh Lalu Lintas Waktu Nyata
<a name="how-to-set-real-time-traffic-code"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Traffic Map</title>
        <meta charset='utf-8'>
            <meta name="viewport" content="width=device-width, initial-scale=1">
                <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
                <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body style="margin: 0; padding: 0;">
        <div id="map" style="width: 100%; height: 100vh;"></div>
        <script>
            const apiKey = "Add Your Api Key";
            const mapStyle = "Standard";
            const awsRegion = "us-east-1";

            const map = new maplibregl.Map({
                container: 'map',
                style: `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?traffic=All&key=${apiKey}`,
                center: [-74.0060 ,40.7128], // New York City coordinates for traffic visibility
                zoom: 12,
                validateStyle: false, // Disable style validation for faster map load
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body {
    margin: 0;
    padding: 0;
}

#map {
    width: 100%;
    height: 100vh;
}
```

------

# Cara membuat peta logistik
<a name="how-to-create-logistic-map"></a>

 TravelModes Fitur ini memungkinkan Anda membuat peta logistik menggunakan Amazon Location Service. TravelModes menampilkan informasi perutean yang relevan untuk navigasi Truk dengan pembatasan jalan terkait. Gunakan [Transit TravelMode](https://docs.aws.amazon.com/location/latest/developerguide/how-to-show-transit-details-map.html) untuk menunjukkan detail transportasi umum.

## Buat peta dengan Truk TravelMode
<a name="how-to-create-truck-map"></a>

Contoh ini menunjukkan cara membuat peta dengan `Truck` `TravelMode` untuk perutean logistik.

### Contoh truk
<a name="how-to-create-truck-map-code"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Truck Map</title>
        <meta charset='utf-8'>
            <meta name="viewport" content="width=device-width, initial-scale=1">
                <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
                <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body style="margin: 0; padding: 0;">
        <div id="map" style="width: 100%; height: 100vh;"></div>
        <script>
            const apiKey = "Add Your Api Key";
            const mapStyle = "Standard";
            const awsRegion = "us-east-1";

            const map = new maplibregl.Map({
                container: 'map',
                style: `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?travel-modes=Truck&key=${apiKey}`,
                center: [-74.0060 ,40.7128],
                zoom: 12,
                validateStyle: false, // Disable style validation for faster map load
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body {
    margin: 0;
    padding: 0;
}

#map {
    width: 100%;
    height: 100vh;
}
```

------

# Cara menampilkan detail transit di peta
<a name="how-to-show-transit-details-map"></a>

Amazon Location Service memungkinkan Anda menambahkan fitur transit ke peta. Ini `Transit` `TravelMode` menampilkan informasi perutean untuk angkutan umum, seperti jalur kereta berkode warna. Periksa juga cara mengatur [logistik TravelMode](https://docs.aws.amazon.com/location/latest/developerguide/how-to-create-logistic-map.html) untuk opsi tambahan.

## Buat peta dengan detail transit
<a name="how-to-show-transit-map"></a>

Contoh ini menunjukkan cara membuat peta dengan detail transit dengan Transit TravelMode untuk transportasi umum.

### Contoh transit
<a name="how-to-show-transit-map-code"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Transit Map</title>
        <meta charset='utf-8'>
            <meta name="viewport" content="width=device-width, initial-scale=1">
                <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
                <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body style="margin: 0; padding: 0;">
        <div id="map" style="width: 100%; height: 100vh;"></div>
        <script>
            const apiKey = "Add Your Api Key";
            const mapStyle = "Standard";
            const awsRegion = "us-east-1";

            const map = new maplibregl.Map({
                container: 'map',
                style: `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?travel-modes=Transit&key=${apiKey}`,
                center: [-74.0060 ,40.7128],
                zoom: 12,
                validateStyle: false, // Disable style validation for faster map load
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body {
    margin: 0;
    padding: 0;
}

#map {
    width: 100%;
    height: 100vh;
}
```

------

# Cara membuat peta 3D
<a name="how-to-create-a-3d-map"></a>

Amazon Location Service memungkinkan Anda menambahkan fitur tiga dimensi ke peta, seperti `Terrain3D` menampilkan data elevasi sebagai permukaan tiga dimensi, atau `Buildings3D` menampilkan struktur perkotaan dengan tinggi dan volume. 

## Buat peta dengan detail medan tiga dimensi
<a name="how-to-show-3d-terrain-map"></a>

Contoh ini menunjukkan cara membuat peta dengan `Terrain3D` parameter. 

### Contoh Terrain3D
<a name="how-to-show-3d-terrain-map-code"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>3D Terrain</title>
        <meta charset='utf-8'>
            <meta name="viewport" content="width=device-width, initial-scale=1">
                <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
                <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body style="margin: 0; padding: 0;">
        <div id="map" style="width: 100%; height: 100vh;"></div>
        <script>
            const apiKey = "Add Your Api Key";
            const mapStyle = "Standard";
            const awsRegion = "us-east-1";

            const map = new maplibregl.Map({
                container: 'map',
                style: `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?terrain=Terrain3D&key=${apiKey}`,
                center: [7.6583, 45.9763],
                zoom: 12,
                pitch: 60, // Tilt angle (0-85 degrees)
                validateStyle: false, // Disable style validation for faster map load
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body {
    margin: 0;
    padding: 0;
}

#map {
    width: 100%;
    height: 100vh;
}
```

------

## Buat peta dengan detail bangunan tiga dimensi
<a name="how-to-show-3d-buildings-map"></a>

Contoh ini menunjukkan cara membuat peta dengan `Buildings3D` parameter. 

### Contoh Buildings3D
<a name="how-to-show-3d-buildings-map-code"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>3D Buildings</title>
        <meta charset='utf-8'>
            <meta name="viewport" content="width=device-width, initial-scale=1">
                <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
                <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body style="margin: 0; padding: 0;">
        <div id="map" style="width: 100%; height: 100vh;"></div>
        <script>
            const apiKey = "Add Your Api Key";
            const mapStyle = "Standard";
            const awsRegion = "us-east-1";

            const map = new maplibregl.Map({
                container: 'map',
                style:
                `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?buildings=Buildings3D&key=${apiKey}`,
                center: [7.6583, 45.9763],
                zoom: 12,
                pitch: 60, // Tilt angle (0-85 degrees)
                validateStyle: false, // Disable style validation for faster map load
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body {
    margin: 0;
    padding: 0;
}

#map {
    width: 100%;
    height: 100vh;
}
```

------

## Aktifkan/nonaktifkan tampilan Globe
<a name="how-to-enable-disable-globe-view"></a>

Contoh ini menunjukkan cara mengaktifkan atau menonaktifkan proyeksi tampilan Globe. Secara default, tampilan Globe diaktifkan. 

### Contoh tampilan globe
<a name="how-to-enable-disable-globe-view-code"></a>

------
#### [ index.html ]

```
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Globe View</title>
        <meta charset='utf-8'>
            <meta name="viewport" content="width=device-width, initial-scale=1">
                <link rel='stylesheet' href='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.css' />
                <script src='https://unpkg.com/maplibre-gl@5.x/dist/maplibre-gl.js'></script>
    </head>
    <body style="margin: 0; padding: 0;">
        <div id="map" style="width: 100%; height: 100vh;"></div>
        <script>
            const apiKey = "Add Your Api Key";
            const mapStyle = "Standard";
            const awsRegion = "us-east-1";

            const map = new maplibregl.Map({
                container: 'map',
                style:
                `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`,
                center: [-74.5, 40],
                zoom: 2,
                validateStyle: false, // Disable style validation for faster map load
            });

            map.on('style.load', () => {
                // Globe view is enabled by default
                // To disable globe view, uncomment the next line:
                // map.setProjection({});
            });
        </script>
    </body>
</html>
```

------
#### [ style.css ]

```
body {
    margin: 0;
    padding: 0;
}

#map {
    width: 100%;
    height: 100vh;
}
```

------

# Cara menggunakan peta statis
<a name="static-maps-how-to"></a>

Topik how-to ini menawarkan step-by-step panduan untuk menyesuaikan peta statis dengan overlay dan elemen visual, memanfaatkan kemampuan pemetaan Amazon Location Service. Setiap panduan memandu Anda melalui tugas-tugas utama, seperti menyesuaikan dimensi peta, memilih antara zoom atau radius, dan menambahkan berbagai elemen geo-spasial seperti spidol, poligon, garis, dan lingkaran kedekatan. Panduan ini menggunakan format ringkas dan GeoJSON untuk memastikan fleksibilitas dalam gaya dan konfigurasi.

Baik Anda mengoptimalkan peta untuk aplikasi yang dihadapi pelanggan atau melakukan analisis geospasial, topik ini memberikan instruksi yang jelas tentang menyesuaikan peta statis Anda agar sesuai dengan persyaratan tertentu. Dengan mengikuti contoh terperinci, Anda akan belajar cara meningkatkan presentasi peta dan mengelola data geografis secara efisien untuk berbagai kebutuhan bisnis.

**Topics**
+ [Cara mendapatkan peta statis dari posisi tertentu](get-static-map-specific-position.md)
+ [Cara mendapatkan peta statis dari dimensi tertentu](get-static-map-specific-dimension.md)
+ [Cara memutuskan antara radius dan zoom untuk peta statis](choose-radius-vs-zoom.md)
+ [Cara menambahkan skala untuk peta statis](add-scale-static-map.md)
+ [Cara menambahkan penanda ke peta statis](add-marker-static-map.md)
+ [Cara menambahkan garis ke peta statis](how-to-add-line-static.md)
+ [Cara menambahkan rute ke peta statis](how-to-add-route.md)
+ [Cara menambahkan poligon ke peta statis](how-to-add-polygon-static.md)
+ [Cara mengatur bahasa untuk peta statis](set-language-static-map.md)
+ [Cara menambahkan lingkaran kedekatan ke peta statis](how-to-add-proximity-circle.md)

# Cara mendapatkan peta statis dari posisi tertentu
<a name="get-static-map-specific-position"></a>

Dalam topik ini, Anda akan belajar cara mengambil peta statis dari Amazon Location Service berdasarkan parameter tertentu. Anda akan belajar cara membuat peta statis untuk posisi tengah, kotak pembatas, dan satu set posisi terbatas. Contoh yang diberikan akan membantu Anda menyesuaikan lebar, tinggi, dan gaya peta.

**catatan**  
Anda harus melewati salah satu `map` atau `map@2x` saat membuat peta statis.

## Dapatkan gambar peta untuk posisi tengah
<a name="get-map-center-position"></a>

Dalam contoh ini, Anda akan membuat gambar peta dengan lebar `1024` dan tinggi `1024` dengan koordinat tengah ditetapkan pada`-123.1143,49.2763`, di mana `longitude=-123.1143` dan`latitude=49.2763`, dan tingkat `15` zoom.

------
#### [ Request URL ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=1024&height=1024&zoom=15&center=-123.1156126,49.2767046&key=API_KEY
```

------
#### [ Response image ]

![\[Aerial view of a coastal city with dense urban layout, harbor, and large stadium visible.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-center.png)


------

## Dapatkan gambar peta untuk kotak pembatas
<a name="get-map-bounding-box"></a>

Dalam contoh ini, Anda akan menghasilkan gambar peta Asia Tenggara dengan menetapkan kotak pembatas untuk area tersebut. 

`bbox`Formatnya adalah`{southwest_longitude},{southwest_latitude},{northeast_longitude},{northeast_latitude}`.

------
#### [ Request URL ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=1024&height=1024&bounding-box=90.00,-21.94,146.25,31.95&key=API_KEY
```

------
#### [ Response image ]

![\[Satellite view of Southeast Asia, showing mainland, islands, and surrounding waters.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-bounding-box.png)


------

## Dapatkan gambar peta untuk posisi terbatas
<a name="get-map-bounded-positions"></a>

Dalam contoh ini, Anda akan menghasilkan peta yang mencakup beberapa tempat yang harus dilihat di Paris, masing-masing ditentukan oleh koordinatnya (bujur, garis lintang). Posisi terbatas meliputi: Menara Eiffel, Museum Louvre, Katedral Notre-Dame, Champs-Élysées, Arc de Triomphe, Basilika Sacré-Cœur, Taman Luksemburg, Musée d'Orsay, Place de la Concorde, dan Palais Garnier. 

Format untuk posisi pembatas adalah`{longitude1},{latitude1},{longitude2},{latitude2} ... {longitudeN},{latitudeN}`.

------
#### [ Request URL ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=1024&height=1024&bounded-positions=2.2945,48.8584,2.3376,48.8606,2.3500,48.8529,2.3076,48.8698,2.2950,48.8738,2.3431,48.8867,2.3372,48.8462,2.3266,48.8600,2.3212,48.8656,2.3317,48.8719&key=API_KEY
```

------
#### [ Response image ]

![\[Aerial view of Paris showing dense urban layout, Seine River, and iconic landmarks.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-bounding-position.png)


------

# Cara mendapatkan peta statis dari dimensi tertentu
<a name="get-static-map-specific-dimension"></a>

Dalam topik ini, Anda akan belajar cara mengatur dimensi (tinggi dan lebar) untuk peta statis menggunakan Amazon Location Service. Menyesuaikan dimensi gambar peta memungkinkan Anda menyeimbangkan kinerja, kualitas visual, dan kegunaan. Nilai maksimum untuk `height` keduanya `width` dan 1400 piksel, sedangkan nilai minimum adalah 64 piksel. Ukuran hasil maksimal adalah 6 MB.

Selain itu, Anda dapat menggunakan `bounds` parameter `bbox` dan bersama `padding` untuk memastikan bahwa fitur peta penting di dekat tepi sepenuhnya terlihat dan tidak terputus.

## Dapatkan gambar peta dengan tinggi dan lebar tertentu
<a name="get-map-specific-dimension"></a>

Dalam contoh ini, Anda akan membuat gambar peta resolusi rendah dan resolusi menengah Helsinki, Finlandia.

------
#### [ Request URL for low-resolution thumbnail ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=200&height=200&zoom=11.5&center=24.9460,60.1690&key=API_KEY
```

------
#### [ Response (Thumbnail 200x200) ]

![\[Aerial view of a coastal city with intricate waterways, islands, and urban development.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-specific-dimension-low.png)


------
#### [ Request URL for mid-resolution image ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=700&height=700&zoom=13&center=24.9460,60.1690&key=API_KEY
```

------
#### [ Response image (700x700) ]

![\[Aerial view of a coastal city with dense urban development, harbors, and surrounding waters.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-specific-dimension-mid.png)


------

## Dapatkan gambar peta dengan padding di semua sisi
<a name="get-map-with-padding"></a>

Dalam contoh ini, Anda akan membuat peta menggunakan beberapa tempat yang harus dilihat di Helsinki, Finlandia, dengan koordinatnya (bujur, garis lintang), baik dengan maupun tanpa bantalan.

------
#### [ Request URL with padding ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=1024&height=1024&padding=150&bounded-positions=24.9526,60.1692,24.9850,60.1465,24.9270,60.1725,24.9226,60.1826,24.9509,60.1675,24.9566,60.1685,24.9457,60.1674,24.9397,60.1719,24.9414,60.1715,24.9387,60.1720&key=API_KEY
```

------
#### [ Response image (with padding) ]

![\[Aerial view of a coastal city with dense urban areas, harbors, and surrounding islands.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-specific-dimension-padding.png)


------
#### [ Request URL without padding ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=1024&height=1024&bounded-positions=24.9526,60.1692,24.9850,60.1465,24.9270,60.1725,24.9226,60.1826,24.9509,60.1675,24.9566,60.1685,24.9457,60.1674,24.9397,60.1719,24.9414,60.1715,24.9387,60.1720&key=API_KEY
```

------
#### [ Response image (without padding) ]

![\[Aerial view of a coastal city with dense urban areas, harbors, and small islands.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-specific-dimension-no-padding.png)


------

# Cara memutuskan antara radius dan zoom untuk peta statis
<a name="choose-radius-vs-zoom"></a>

Dalam topik ini, Anda akan belajar cara memilih antara menggunakan `radius` atau `zoom` saat membuat peta statis dengan Amazon Location Service. `radius`Parameter ini memberikan kontrol yang lebih tepat atas area cakupan, sehingga ideal untuk aplikasi yang menghadap pelanggan di mana Anda mengetahui area cakupan yang tepat. `zoom`Parameter ini lebih cocok untuk analisis geospasial ketika Anda ingin menyesuaikan tingkat detail yang ditampilkan.

## Dengan radius
<a name="with-radius"></a>

Dalam contoh ini, Anda akan membuat gambar peta Sri Lanka menggunakan `radius` parameter dengan lokasi pusat.

------
#### [ Request URL ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=700&height=700&center=80.60596,7.76671&radius=235000&scale-unit=KilometersMiles&key=API_KEY
```

------
#### [ Response image ]

![\[Satellite view of Sri Lanka, showing the teardrop-shaped island nation surrounded by ocean.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-radius.png)


------

## Dengan zoom
<a name="with-zoom"></a>

Dalam contoh ini, Anda akan membuat gambar peta Sri Lanka menggunakan `zoom` parameter dengan lokasi pusat.

------
#### [ Request URL ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=700&height=700&zoom=8&center=80.60596,7.76671&scale-unit=KilometersMiles&key=API_KEY
```

------
#### [ Response image ]

![\[Satellite view of Sri Lanka, showing the teardrop-shaped island nation surrounded by ocean.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-zoom.png)


------

# Cara menambahkan skala untuk peta statis
<a name="add-scale-static-map"></a>

Dalam topik ini, Anda akan mempelajari cara menampilkan skala di sudut kanan bawah peta statis yang dihasilkan dengan Amazon Location Service. Skala dapat menunjukkan satu unit, seperti `Miles` atau`Kilometers`, atau kedua unit, seperti `KilometersMiles` atau`MilesKilometers`, dengan satu unit ditampilkan di bagian atas dan yang lainnya di bagian bawah.

## Tambahkan skala dengan satu unit
<a name="add-scale-single-unit"></a>

Dalam contoh ini, Anda akan menampilkan peta Helsinki, Finlandia dengan skala diatur ke `Kilometers` di sudut kanan bawah.

------
#### [ Request URL ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=1024&height=1024&zoom=13.5&center=24.9189564,60.1645772&scale-unit=Kilometers&key=API_KEY
```

------
#### [ Response image ]

![\[Aerial view of a coastal city with dense urban areas, waterways, and islands.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-scale-single.png)


------

## Tambahkan skala dengan kedua unit
<a name="add-scale-both-units"></a>

Dalam contoh ini, Anda akan menampilkan peta Helsinki, Finlandia dengan keduanya `Kilometers` dan `Miles` ditampilkan pada skala di sudut kanan bawah, dengan satu unit ditampilkan di atas yang lain.

------
#### [ Request URL ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=1024&height=1024&zoom=14&center=24.9189564,60.1645772&scale-unit=KilometersMiles&key=API_KEY
```

------
#### [ Response image ]

![\[Aerial view of a coastal city with dense urban areas, harbors, and islands surrounded by water.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-scale-both.png)


------

# Cara menambahkan penanda ke peta statis
<a name="add-marker-static-map"></a>

Dalam topik ini, Anda akan belajar cara menambahkan penanda ke peta statis yang dihasilkan dengan Amazon Location Service. Anda dapat menyesuaikan ikon penanda, label, ukuran, warna, dan opsi gaya lainnya. Ini memungkinkan Anda untuk menyorot lokasi tertentu dengan isyarat visual yang selaras dengan tujuan peta Anda.

## Penataan penanda
<a name="marker-styling"></a>


| Nama | Tipe | Default | Deskripsi | 
| --- | --- | --- | --- | 
| `style` | String | `marker` | Gaya geometri Titik. Untuk membuat penanda, atur nilai ke `marker` atau tidak menyertakan `style` atribut dalam objek properti GeoJSON. | 
| `icon` | String | `pin` | Jenis ikon penanda. Nilai yang tersedia meliputi: `cp` (lingkaran kedekatan)`diamond`,`pin`,,`poi`,`square`,`triangle`,`bubble`. | 
| `label` | String | `<empty>` | Teks untuk ditampilkan pada koordinat. Untuk mengatur label otomatis, gunakan nilai berikut: `$alpha` (alfabet Latin) atau `$num` (angka Arab). | 
| `color` | Warna | Tergantung gaya | Warna ikon. | 
| `outline-color` | Warna | Tergantung gaya | Warna garis besar ikon. | 
| `text-color` | Warna | Tergantung gaya | Warna teks label. | 
| `text-outline-color` | Warna | Tergantung gaya | Warna garis besar teks. | 
| `outline-width` | Bilangan Bulat | `0`(dimatikan) | Lebar garis besar teks. | 
| `size` | String | `medium` | Ukuran label dan ikon. Nilai yang tersedia:`small`,`medium`,`large`. | 

## Menambahkan Marker ke Gambar Peta
<a name="add-marker-single"></a>

Dalam contoh ini, Anda akan menempatkan penanda dengan label pada gambar peta BC Place, Vancouver.

`Geo JSON`:

```
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "type": "Point",
        "coordinates": [
          -123.11210,
          49.2767875
        ]
        },
      "properties": {
          "color":"#EE4B2B",
          "size":"large",
          "label":"BC Place, Vancouver",
          "text-color":"#0000FF"
       }
    }
  ]
}
```

`Compact`:

```
point: -123.11210,49.27678;
label=BC Place, Vancouver;
size=large;
text-color=#0000FF;
color=#EE4B2B
```

------
#### [ Request URL ]

Dengan overlay GeoJSON

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=1024&height=1024&zoom=15&scale-unit=KilometersMiles&geojson-overlay=%7B%22type%22%3A%22FeatureCollection%22,%22features%22%3A%5B%7B%22type%22%3A%22Feature%22,%22properties%22%3A%7B%22color%22%3A%22%23EE4B2B%22,%22size%22%3A%22large%22,%22label%22%3A%22BC%20Place,%20Vancouver%22,%22text-color%22%3A%22%230000FF%22%7D,%22geometry%22%3A%7B%22coordinates%22%3A%5B-123.11210974152168,49.27678753813112%5D,%22type%22%3A%22Point%22%7D%7D%5D%7D&key=API_KEY
```

------
#### [ Response image ]

![\[Aerial view of Vancouver's downtown and harbor, with BC Place stadium marked.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-add-marker.png)


------

## Tambahkan beberapa penanda ke gambar peta
<a name="add-multiple-markers"></a>

Dalam contoh ini, Anda akan menambahkan spidol untuk tempat-tempat yang harus dilihat di Helsinki, Finlandia menggunakan koordinatnya (bujur, garis lintang). Anda juga dapat menerapkan padding untuk memastikan peta mengakomodasi semua spidol dengan benar.

**catatan**  
Jenis ikon penanda yang tersedia meliputi: `cp` untuk lingkaran kedekatan,`diamond, pin, poi, square, triangle, bubble`.

`Geo JSON`:

```
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "type": "MultiPoint",
        "coordinates": [
          [24.9526, 60.1692],
          [24.9270, 60.1725],
          [24.9226, 60.1826],
          [24.9509, 60.1675],
          [24.9566, 60.1685],
          [24.9457, 60.1674],
          [24.9397, 60.1719],
          [24.9414, 60.1715],
          [24.9387, 60.1720]
        ]
      },
      "properties": {
        "icon":"diamond",
        "label":"$num",
        "size":"large",
        "text-color":"%23972E2B",
        "text-outline-color":"%23FFF",
        "text-outline-width":2
      }
    }
  ]
}
```

------
#### [ Request URL ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=1024&height=1024&padding=150&geojson-overlay=%7B%22type%22%3A%22FeatureCollection%22,%22features%22%3A%5B%7B%22type%22%3A%22Feature%22,%22geometry%22%3A%7B%22type%22%3A%22MultiPoint%22,%22coordinates%22%3A%5B%5B24.9526,60.1692%5D,%5B24.927,60.1725%5D,%5B24.9226,60.1826%5D,%5B24.9509,60.1675%5D,%5B24.9566,60.1685%5D,%5B24.9457,60.1674%5D,%5B24.9397,60.1719%5D,%5B24.9414,60.1715%5D,%5B24.9387,60.172%5D%5D%7D,%22properties%22%3A%7B%22icon%22%3A%22diamond%22,%22label%22%3A%22%24num%22,%22size%22%3A%22large%22,%22text-color%22%3A%22%23972E2B%22,%22text-outline-color%22%3A%22%23FFF%22,%22text-outline-width%22%3A2%7D%7D%5D%7D&key=API_KEY
```

------
#### [ Response image ]

![\[Aerial view of a city with lakes, buildings, roads, and numbered markers indicating points of interest.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-add-multi-markers.png)


------

## Ubah warna penanda pada gambar peta
<a name="change-marker-color"></a>

Dalam contoh ini, Anda akan menggunakan penanda gelembung dengan warna berbeda untuk mewakili kota di seluruh dunia. Anda dapat menyesuaikan warna penanda, label, dan properti lainnya agar sesuai dengan konteks peta Anda.

`Geo JSON`:

```
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "type": "Point",
        "coordinates": [85.1376, 25.5941]
      },
      "properties": {
        "label": "Patna",
        "icon": "bubble",
        "color": "#FF5722",
        "outline-color": "#D74D3D",
        "text-color": "#FFFFFF"
      }
    },
    .....redacted.....
    {
      "type": "Feature",
      "geometry": {
        "type": "Point",
        "coordinates": [2.3522, 48.8566]
      },
      "properties": {
        "label": "Paris, France",
        "icon": "bubble",
        "color": "#FF9800",
        "outline-color": "#D76B0B",
        "text-color": "#FFFFFF"
      }
    }
  ]
}
```

------
#### [ Request URL ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=1400&height=1024&padding=150&geojson-overlay=%7B%22type%22%3A%22FeatureCollection%22,%22features%22%3A%5B%7B%22type%22%3A%22Feature%22,%22geometry%22%3A%7B%22type%22%3A%22Point%22,%22coordinates%22%3A%5B85.1376,25.5941%5D%7D,%22properties%22%3A%7B%22label%22%3A%22Patna%22,%22icon%22%3A%22bubble%22,%22color%22%3A%22%23FF5722%22,%22outline-color%22%3A%22%23D74D3D%22,%22text-color%22%3A%22%23FFFFFF%22%7D%7D,%7B%22type%22%3A%22Feature%22,%22geometry%22%3A%7B%22type%22%3A%22Point%22,%22coordinates%22%3A%5B105.8542,21.0285%5D%7D,%22properties%22%3A%7B%22label%22%3A%22Hanoi,%20Vietnam%22,%22icon%22%3A%22bubble%22,%22color%22%3A%22%232196F3%22,%22outline-color%22%3A%22%231A78C2%22,%22text-color%22%3A%22%23FFFFFF%22%7D%7D,%7B%22type%22%3A%22Feature%22,%22geometry%22%3A%7B%22type%22%3A%22Point%22,%22coordinates%22%3A%5B116.4074,39.9042%5D%7D,%22properties%22%3A%7B%22label%22%3A%22Beijing,%20China%22,%22icon%22%3A%22bubble%22,%22color%22%3A%22%23FF9800%22,%22outline-color%22%3A%22%23D76B0B%22,%22text-color%22%3A%22%23FFFFFF%22%7D%7D,%7B%22type%22%3A%22Feature%22,%22geometry%22%3A%7B%22type%22%3A%22Point%22,%22coordinates%22%3A%5B106.9101,47.918%5D%7D,%22properties%22%3A%7B%22label%22%3A%22Ulaanbaatar,%20Mongolia%22,%22icon%22%3A%22bubble%22,%22color%22%3A%22%239C27B0%22,%22outline-color%22%3A%22%237B1FA2%22,%22text-color%22%3A%22%23FFFFFF%22%7D%7D,%7B%22type%22%3A%22Feature%22,%22geometry%22%3A%7B%22type%22%3A%22Point%22,%22coordinates%22%3A%5B151.2093,-33.8688%5D%7D,%22properties%22%3A%7B%22label%22%3A%22Sydney,%20Australia%22,%22icon%22%3A%22bubble%22,%22color%22%3A%22%234CAF50%22,%22outline-color%22%3A%22%23388E3C%22,%22text-color%22%3A%22%23FFFFFF%22%7D%7D,%7B%22type%22%3A%22Feature%22,%22geometry%22%3A%7B%22type%22%3A%22Point%22,%22coordinates%22%3A%5B174.7633,-41.2865%5D%7D,%22properties%22%3A%7B%22label%22%3A%22Wellington,%20New%20Zealand%22,%22icon%22%3A%22bubble%22,%22color%22%3A%22%23FFC107%22,%22outline-color%22%3A%22%23FFA000%22,%22text-color%22%3A%22%23000000%22%7D%7D%5D%7D&key=API_KEY
```

------
#### [ Response image ]

![\[World map showing locations of major cities across continents with colored labels.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-change-marker-color.png)


------

# Cara menambahkan garis ke peta statis
<a name="how-to-add-line-static"></a>

 Dalam topik ini, Anda akan mempelajari cara menambahkan baris ke peta statis menggunakan Amazon Location Service. Kami akan membahas opsi styling yang didukung, cara menentukan garis menggunakan GeoJSON, dan cara menerapkan gaya kustom seperti warna, lebar, dan garis besar. Kami juga akan mengeksplorasi cara menggunakan unit pengukuran yang berbeda untuk properti seperti lebar garis. 

## Gaya yang didukung
<a name="supported-styling"></a>


| Nama | Tipe | Default | Deskripsi | 
| --- | --- | --- | --- | 
| `color` | Warna | tergantung gaya | Warna garis. | 
| `width` | Integer/String | 2 | Lebar garis. Untuk informasi selengkapnya, lihat [Cara menambahkan garis ke peta statis](#how-to-add-line-static). | 
| `outline-color`  | Warna | tergantung gaya | Warna garis garis besar. | 
|  `outline-width`  | Integer/String | 0 (dimatikan) | Lebar garis besar. Untuk informasi selengkapnya, lihat [Cara menambahkan garis ke peta statis](#how-to-add-line-static). | 

## Unit yang didukung
<a name="supported-unit"></a>


| Unit | Deskripsi | 
| --- | --- | 
| Integer, misalnya, `5` | Piksel | 
| String tanpa unit, misalnya `"5"` | Piksel | 
| `"px"` | Piksel | 
| `"m"` | Meter | 
|  `"km"`  | Kilometer | 
| `"mi"` | Miles | 
| `"ft"` | Kaki | 
| `"yd"` | Pekarangan | 
| `"%"` | Persentase nilai default untuk properti tertentu, dalam piksel. Misalnya, jika nilai default untuk `width` adalah `2` piksel, maka `200%` adalah `4` piksel. `%`adalah karakter sensitif yang harus dikodekan dalam URL permintaan sebagai. `%25` | 

## Tambahkan baris
<a name="add-a-line"></a>

 Dalam contoh ini, Anda akan menambahkan garis dari tempat di Vancouver ke Stanley Park. Baris dibuat menggunakan format GeoJSON dengan koordinat yang ditentukan. 

------
#### [ Request ]

```
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "type": "LineString",
        "coordinates": [
          [-123.11813, 49.28246],
          [-123.11967, 49.28347],
          [-123.12108, 49.28439],
          [-123.12216, 49.28507],
          [-123.12688, 49.28812],
          [-123.1292, 49.28964],
          [-123.13216, 49.2916],
          [-123.13424, 49.29291],
          [-123.13649, 49.2944],
          [-123.13678, 49.29477],
          [-123.13649, 49.29569],
          [-123.13657, 49.29649],
          [-123.13701, 49.29715],
          [-123.13584, 49.29847],
          [-123.13579, 49.29935],
          [-123.13576, 49.30018],
          [-123.13574, 49.30097]
        ]
      },
      "properties": {
        "name": "To Stanley Park",
        "description": "An evening walk to Stanley Park."
      }
    }
  ]
}
```

------
#### [ Request URL ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=1024&height=1024&padding=200&scale-unit=KilometersMiles&geojson-overlay=%7B%22type%22%3A%22FeatureCollection%22,%22features%22%3A%5B%7B%22type%22%3A%22Feature%22,%22geometry%22%3A%7B%22type%22%3A%22LineString%22,%22coordinates%22%3A%5B%5B-123.11813,49.28246%5D,%5B-123.11967,49.28347%5D,%5B-123.12108,49.28439%5D,%5B-123.12216,49.28507%5D,%5B-123.12688,49.28812%5D,%5B-123.1292,49.28964%5D,%5B-123.13216,49.2916%5D,%5B-123.13424,49.29291%5D,%5B-123.13649,49.2944%5D,%5B-123.13678,49.29477%5D,%5B-123.13649,49.29569%5D,%5B-123.13657,49.29649%5D,%5B-123.13701,49.29715%5D,%5B-123.13584,49.29847%5D,%5B-123.13579,49.29935%5D,%5B-123.13576,49.30018%5D,%5B-123.13574,49.30097%5D%5D%7D,%22properties%22%3A%7B%22name%22%3A%22To%20Stanley%20Park%22,%22description%22%3A%22An%20evening%20walk%20to%20Stanley%20Park.%22%7D%7D%5D%7D&key=API_KEY
```

------
#### [ Response image ]

![\[Aerial view of coastal city with dense urban area, marina, and surrounding forests.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-add-line.png)


------

## Tambahkan gaya ke garis
<a name="add-styling"></a>

 Dalam contoh ini, Anda akan menata garis yang ditambahkan pada contoh sebelumnya. Ini termasuk mendefinisikan warna garis, lebar, warna garis besar, dan lebar garis untuk menyesuaikan tampilan visual garis pada peta. 

------
#### [ Request ]

```
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "type": "LineString",
        "coordinates": [
          [-123.11813, 49.28246],
          [-123.11967, 49.28347],
          [-123.12108, 49.28439],
          [-123.12216, 49.28507],
          [-123.12688, 49.28812],
          [-123.1292, 49.28964],
          [-123.13216, 49.2916],
          [-123.13424, 49.29291],
          [-123.13649, 49.2944],
          [-123.13678, 49.29477],
          [-123.13649, 49.29569],
          [-123.13657, 49.29649],
          [-123.13701, 49.29715],
          [-123.13584, 49.29847],
          [-123.13579, 49.29935],
          [-123.13576, 49.30018],
          [-123.13574, 49.30097]
        ]
      },
      "properties": {
        "color": "#6d34b3", 
        "width": "9m",
        "outline-color": "#a8b9cc",  
        "outline-width": "2px"
      }
    }
  ]
}
```

------
#### [ Request URL ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=1024&height=1024&padding=200&scale-unit=KilometersMiles&geojson-overlay=%7B%22type%22%3A%22FeatureCollection%22,%22features%22%3A%5B%7B%22type%22%3A%22Feature%22,%22geometry%22%3A%22LineString%22,%22coordinates%22%3A%5B%5B-123.11813,49.28246%5D,%5B-123.11967,49.28347%5D,%5B-123.12108,49.28439%5D,%5B-123.12216,49.28507%5D,%5B-123.12688,49.28812%5D,%5B-123.1292,49.28964%5D,%5B-123.13216,49.2916%5D,%5B-123.13424,49.29291%5D,%5B-123.13649,49.2944%5D,%5B-123.13678,49.29477%5D,%5B-123.13649,49.29569%5D,%5B-123.13657,49.29649%5D,%5B-123.13701,49.29715%5D,%5B-123.13584,49.29847%5D,%5B-123.13579,49.29935%5D,%5B-123.13576,49.30018%5D,%5B-123.13574,49.30097%5D%5D%7D,%22properties%22%3A%7B%22color%22%3A%22%236d34b3%22,%22width%22%3A%229m%22,%22outline-color%22%3A%22%23a8b9cc%22,%22outline-width%22%3A%222px%22%7D%7D%5D%7D&key=API_KEY
```

------
#### [ Response image ]

![\[Aerial view of coastal city with dense urban area, marina, and surrounding forests.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-add-line-styling.png)


------

# Cara menambahkan rute ke peta statis
<a name="how-to-add-route"></a>

Dalam topik ini, Anda akan mempelajari cara menambahkan rute ke peta statis menggunakan Amazon Location Service. Anda akan melalui langkah-langkah untuk mendapatkan rute menggunakan CalculateRoutes API dan kemudian memvisualisasikannya pada peta statis menggunakan GeoJSON dan styling khusus untuk titik dan garis. 

## Langkah-langkah untuk menambahkan rute
<a name="steps-to-add-route"></a>

1. Dapatkan rute dari `CalculateRoutes` API. Hapus koordinat yang jatuh pada garis lurus yang sama untuk mengoptimalkan LineString, mencegah string kueri mencapai batasnya.

1. Buat objek GeoJSON berdasarkan set koordinat yang dioptimalkan.

1. Ambil poin pertama dan terakhir dari LineString dan tambahkan geometri Titik untuk menandai lokasi awal dan akhir.

1. Gaya poin dan LineString sesuai dengan kebutuhan bisnis Anda, sesuaikan properti seperti warna, ukuran, dan label.

## Tambahkan rute menggunakan gaya kompak
<a name="add-route-using-compact-style"></a>

Dalam contoh ini, Anda akan menambahkan rute dengan titik awal dan akhir ke garis yang dibuat[Cara menambahkan garis ke peta statis](how-to-add-line-static.md). Rute akan ditentukan dengan gaya khusus, termasuk warna, ukuran, dan label untuk titik awal dan akhir.

```
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "type": "LineString",
        "coordinates": [
          [-123.11813, 49.28246],
          [-123.11967, 49.28347],
          [-123.12108, 49.28439],
          [-123.12216, 49.28507],
          [-123.12688, 49.28812],
          [-123.1292, 49.28964],
          [-123.13216, 49.2916],
          [-123.13424, 49.29291],
          [-123.13649, 49.2944],
          [-123.13678, 49.29477],
          [-123.13649, 49.29569],
          [-123.13657, 49.29649],
          [-123.13701, 49.29715],
          [-123.13584, 49.29847],
          [-123.13579, 49.29935],
          [-123.13576, 49.30018],
          [-123.13574, 49.30097]
        ]
      },
      "properties": {
        "color": "#000000", 
        "width": "20m",
        "outline-color": "#a8b9cc",  
        "outline-width": "2px"
      }
    },
    {
      "type": "Feature",
      "geometry": {
        "type": "Point",
        "coordinates": [-123.11813, 49.28246]
      },
      "properties": {
        "label": "Pacific Centre",
        "icon": "bubble",
        "size": "large",
        "color": "#34B3A4",
        "outline-color": "#006400",
        "text-color": "#FFFFFF"
      }
    },
    {
      "type": "Feature",
      "geometry": {
        "type": "Point",
        "coordinates": [-123.13574, 49.30097]
      },
      "properties": {
        "label": "Stanley Park",
        "icon": "bubble",
        "size": "large",
        "color": "#B3346D",
        "outline-color": "#FF0000",
        "text-color": "#FFFFFF"
      }
    }
  ]
}
```

------
#### [ Request URL ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=1024&height=1024&padding=200&scale-unit=KilometersMiles&geojson-overlay=%7B%22type%22%3A%22FeatureCollection%22,%22features%22%3A%5B%7B%22type%22%3A%22Feature%22,%22geometry%22%3A%7B%22type%22%3A%22LineString%22,%22coordinates%22%3A%5B%5B-123.11813,49.28246%5D,%5B-123.11967,49.28347%5D,%5B-123.12108,49.28439%5D,%5B-123.12216,49.28507%5D,%5B-123.12688,49.28812%5D,%5B-123.1292,49.28964%5D,%5B-123.13216,49.2916%5D,%5B-123.13424,49.29291%5D,%5B-123.13649,49.2944%5D,%5B-123.13678,49.29477%5D,%5B-123.13649,49.29569%5D,%5B-123.13657,49.29649%5D,%5B-123.13701,49.29715%5D,%5B-123.13584,49.29847%5D,%5B-123.13579,49.29935%5D,%5B-123.13576,49.30018%5D,%5B-123.13574,49.30097%5D%5D%7D,%22properties%22%3A%7B%22color%22%3A%22%23000000%22,%22width%22%3A%2220m%22,%22outline-color%22%3A%22%23a8b9cc%22,%22outline-width%22%3A%222px%22%7D%7D,%7B%22type%22%3A%22Feature%22,%22geometry%22%3A%22Point%22,%22coordinates%22%3A%5B-123.11813,49.28246%5D%7D,%22properties%22%3A%7B%22label%22%3A%22Pacific%20Centre%22,%22icon%22%3A%22bubble%22,%22size%22%3A%22large%22,%22color%22%3A%22%2334B3A4%22,%22outline-color%22%3A%22%23006400%22,%22text-color%22%3A%22%23FFFFFF%22%7D%7D,%7B%22type%22%3A%22Feature%22,%22geometry%22%3A%22Point%22,%22coordinates%22%3A%5B-123.13574,49.30097%5D%7D,%22properties%22%3A%7B%22label%22%3A%22Stanley%20park%22,%22icon%22%3A%22bubble%22,%22size%22%3A%22large%22,%22color%22%3A%22%23B3346D%22,%22outline-color%22%3A%22%23FF0000%22,%22text-color%22%3A%22%23FFFFFF%22%7D%7D%5D%7D&key=API_KEY
```

------
#### [ Response image ]

![\[Aerial view of Vancouver with Stanley Park and Pacific Centre marked, showing urban layout and coastline.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/static-add-route-compact.png)


------

# Cara menambahkan poligon ke peta statis
<a name="how-to-add-polygon-static"></a>

Bangunan dan lokasi dapat disorot pada peta dengan menunjuk poligon di sekitarnya, misalnya, Pentagon (terletak di Washington, D.C.). 

## Tambahkan satu poligon
<a name="polygon-single"></a>

Dalam contoh ini, Anda menambahkan poligon (pentagon) untuk bangunan Pentagon di peta.

------
#### [ Geo JSON ]

```
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "coordinates": [
          [
            [
              -77.0579282196337,
              38.87264268371487
            ],
            [
              -77.05868880963534,
              38.87003145971428
            ],
            [
              -77.05560979468949,
              38.86876862025221
            ],
            [
              -77.05305311263672,
              38.87059509268525
            ],
            [
              -77.0546384387842,
              38.872985132206225
            ],
            [
              -77.0579282196337,
              38.87264268371487
            ]
          ]
        ],
        "type": "Polygon"
      }
    }
  ]
}
```

------
#### [ Request URL ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=600&height=1024&padding=200&scale-unit=KilometersMiles&geojson-overlay=%7B%22type%22%3A%22FeatureCollection%22,%22features%22%3A%5B%7B%22type%22%3A%22Feature%22,%22geometry%22%3A%7B%22coordinates%22%3A%5B%5B%5B-77.0579282196337,38.87264268371487%5D,%5B-77.05868880963534,38.87003145971428%5D,%5B-77.05560979468949,38.86876862025221%5D,%5B-77.05305311263672,38.87059509268525%5D,%5B-77.0546384387842,38.872985132206225%5D,%5B-77.0579282196337,38.87264268371487%5D%5D%5D,%22type%22%3A%22Polygon%22%7D%7D%5D%7D&key=your_API_Key
```

------
#### [ Response image ]

![\[Contoh peta yang menunjukkan poligon di sekitar Pentagon.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/mapsV2/addPolygonStaticMap.png)


------

## Tambahkan poligon gaya
<a name="polygon-restyle"></a>

Dalam contoh ini, kita menata ulang poligon yang ditunjukkan pada contoh sebelumnya. Kami menggambar poligon dalam warna yang berbeda (**\$1E3F70550**). Komponen warna adalah sebagai berikut.
+ **E3** mewakili komponen merah.
+ **F7** mewakili komponen hijau.
+ **05** mewakili komponen biru.
+ **50** mewakili komponen alpha (opacity).

------
#### [ Geo JSON ]

```
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "coordinates": [
          [
            [
              -77.0579282196337,
              38.87264268371487
            ],
            [
              -77.05868880963534,
              38.87003145971428
            ],
            [
              -77.05560979468949,
              38.86876862025221
            ],
            [
              -77.05305311263672,
              38.87059509268525
            ],
            [
              -77.0546384387842,
              38.872985132206225
            ],
            [
              -77.0579282196337,
              38.87264268371487
            ]
          ]
        ],
        "type": "Polygon"
      },
      "properties": {
        "color": "#E3F70550"
      }
    }
  ]
}
```

------
#### [ Request URL ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=1024&height=1024&padding=100&scale-unit=KilometersMiles&geojson-overlay=%7B%22type%22%3A%22FeatureCollection%22,%22features%22%3A%5B%7B%22type%22%3A%22Feature%22,%22geometry%22%3A%7B%22coordinates%22%3A%5B%5B%5B-77.0579282196337,38.87264268371487%5D,%5B-77.05868880963534,38.87003145971428%5D,%5B-77.05560979468949,38.86876862025221%5D,%5B-77.05305311263672,38.87059509268525%5D,%5B-77.0546384387842,38.872985132206225%5D,%5B-77.0579282196337,38.87264268371487%5D%5D%5D,%22type%22%3A%22Polygon%22%7D,%22properties%22%3A%7B%22color%22%3A%22%23E3F70550%22%7D%7D%5D%7D&key=your_API_Key
```

------
#### [ Response image ]

![\[Contoh peta yang menunjukkan poligon berwarna berbeda di sekitar Pentagon.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/mapsV2/addPolygonStaticMap-color.png)


------

## Tambahkan beberapa poligon
<a name="polygon-multiple"></a>

Dalam contoh ini, kami menambahkan beberapa poligon, untuk menyoroti beberapa taman di New York City.

------
#### [ Geo JSON ]

```
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": {
        "color": "#00800050"
      },
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              -73.95824708489555,
              40.80055774655358
            ],
            [
              -73.9818875523859,
              40.76810261850716
            ],
            [
              -73.9729556303776,
              40.7642422333698
            ],
            [
              -73.94916953372382,
              40.79699323614054
            ],
            [
              -73.95824708489555,
              40.80055774655358
            ]
          ]
        ]
      }
    },
    {
      "type": "Feature",
      "properties": {
        "color": "#FF000050"
      },
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              -73.94432602794981,
              40.80634757577718
            ],
            [
              -73.94607200977896,
              40.803869579741644
            ],
            [
              -73.94301654157768,
              40.80263972513214
            ],
            [
              -73.94127055974795,
              40.805099411561145
            ],
            [
              -73.94432602794981,
              40.80634757577718
            ]
          ]
        ]
      }
    },
    {
      "type": "Feature",
      "properties": {
        "color": "#0000FF50"
      },
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              -73.9947948382843,
              40.7691390468232
            ],
            [
              -73.99564708262241,
              40.76802192177411
            ],
            [
              -73.99372953286147,
              40.76723992306512
            ],
            [
              -73.99289367783732,
              40.76835706126087
            ],
            [
              -73.9947948382843,
              40.7691390468232
            ]
          ]
        ]
      }
    }
  ]
}
```

------
#### [ Request URL ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map?style=Satellite&width=1024&height=1024&padding=100&scale-unit=KilometersMiles&geojson-overlay=%7B%22type%22%3A%22FeatureCollection%22,%22features%22%3A%5B%7B%22type%22%3A%22Feature%22,%22properties%22%3A%7B%22color%22%3A%22%2300800050%22%7D,%22geometry%22%3A%7B%22type%22%3A%22Polygon%22,%22coordinates%22%3A%5B%5B%5B-73.95824708489555,40.80055774655358%5D,%5B-73.9818875523859,40.76810261850716%5D,%5B-73.9729556303776,40.7642422333698%5D,%5B-73.94916953372382,40.79699323614054%5D,%5B-73.95824708489555,40.80055774655358%5D%5D%5D%7D%7D,%7B%22type%22%3A%22Feature%22,%22properties%22%3A%7B%22color%22%3A%22%23FF000050%22%7D,%22geometry%22%3A%7B%22type%22%3A%22Polygon%22,%22coordinates%22%3A%5B%5B%5B-73.94432602794981,40.80634757577718%5D,%5B-73.94607200977896,40.803869579741644%5D,%5B-73.94301654157768,40.80263972513214%5D,%5B-73.94127055974795,40.805099411561145%5D,%5B-73.94432602794981,40.80634757577718%5D%5D%5D%7D%7D,%7B%22type%22%3A%22Feature%22,%22properties%22%3A%7B%22color%22%3A%22%230000FF50%22%7D,%22geometry%22%3A%7B%22type%22%3A%22Polygon%22,%22coordinates%22%3A%5B%5B%5B-73.9947948382843,40.7691390468232%5D,%5B-73.99564708262241,40.76802192177411%5D,%5B-73.99372953286147,40.76723992306512%5D,%5B-73.99289367783732,40.76835706126087%5D,%5B-73.9947948382843,40.7691390468232%5D%5D%5D%7D%7D%5D%7D&key=your_API_Key
```

------
#### [ Response image ]

![\[Contoh peta yang menunjukkan beberapa poligon di sekitar taman di NYC.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/mapsV2/addPolygonStaticMap-multiple.png)


------

# Cara mengatur bahasa untuk peta statis
<a name="set-language-static-map"></a>

Anda dapat mengatur bahasa untuk peta statis, jika Anda tidak ingin menggunakan bahasa default.

Dalam contoh ini, lokasi di Tokyo yang umumnya default ke teks Jepang diminta dalam bahasa Inggris, menimpa default regional.

Contoh menunjukkan gambar respons untuk permintaan di mana bahasa disediakan, dan gambar di mana bahasa tidak disediakan. Label yang sesuai mencerminkan perbedaan antara peta yang menunjukkan bahasa yang diminta dan peta yang menunjukkan bahasa default.

------
#### [ Request URL - English set as the language ]

```
https://maps.geo.us-east-1.amazonaws.com/v2/static/map?center=139.4575,35.539&style=Standard&lang=en&height=700&width=700&zoom=14
```

------
#### [ Response image ]

![\[Contoh peta yang menunjukkan poligon di sekitar Pentagon.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/mapsV2/setLanguageEnglishStaticMap.png)


------

------
#### [ Request URL - default language ]

```
https://maps.geo.us-east-1.amazonaws.com/v2/static/map?center=139.4575,35.539&style=Standard&height=700&width=700&zoom=14
```

------
#### [ Response image ]

![\[Contoh peta yang menunjukkan poligon di sekitar Pentagon.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/mapsV2/setLanguageDefaultStaticMap.png)


------

# Cara menambahkan lingkaran kedekatan ke peta statis
<a name="how-to-add-proximity-circle"></a>

Lingkaran jarak menawarkan wawasan penting tentang keakuratan perangkat atau lokasi pengguna yang dilaporkan atau diperkirakan. Dengan menunjukkan lingkaran di sekitar titik yang dilaporkan, pengguna diberitahu bahwa posisi sebenarnya bisa jatuh di mana saja di dalam lingkaran, karena berbagai faktor yang mempengaruhi presisi posisi. Kejelasan tambahan ini membantu pengambilan keputusan dan meningkatkan keamanan navigasi.

Dalam contoh ini, Anda menambahkan lingkaran kedekatan 500 meter di dekat Menara Eiffel di Paris.

------
#### [ Request ]

```
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "type": "Point",
        "coordinates": [
          2.298151,
          48.855921
        ]
      },
      "properties": {
        "style": "circle",
        "color": "#007BFF50",
        "width": "500m"
      }
    },
    {
      "type": "Feature",
      "geometry": {
        "type": "Point",
        "coordinates": [
          2.298151,
          48.855921
        ]
      },
      "properties": {
        "icon": "cp",
        "color": "#007BFF",
        "text-color":"#DC3545",
        "text-outline-color":"#007BFF",
        "outline-width":"20px",
        "label": "You are here",
        "size": "large"
      }
    }
  ]
}
```

------
#### [ Request URL ]

```
https://maps.geo.eu-central-1.amazonaws.com/v2/static/map@2x?style=Satellite&width=700&height=700&zoom=17&center=2.2958,48.8570&geojson-overlay=%7B%20%20%22type%22%3A%20%22FeatureCollection%22,%20%20%22features%22%3A%20%5B%20%20%20%20%7B%20%20%20%20%20%20%22type%22%3A%20%22Feature%22,%20%20%20%20%20%20%22geometry%22%3A%20%7B%20%20%20%20%20%20%20%20%22type%22%3A%20%22Point%22,%20%20%20%20%20%20%20%20%22coordinates%22%3A%20%5B%20%20%20%20%20%20%20%20%20%202.298151,%20%20%20%20%20%20%20%20%20%2048.855921%20%20%20%20%20%20%20%20%5D%20%20%20%20%20%20%7D,%20%20%20%20%20%20%22properties%22%3A%20%7B%20%20%20%20%20%20%20%20%22style%22%3A%20%22circle%22,%20%20%20%20%20%20%20%20%22color%22%3A%20%22%23007BFF50%22,%20%20%20%20%20%20%20%20%22width%22%3A%20%22500m%22%20%20%20%20%20%20%7D%20%20%20%20%7D,%20%20%20%20%7B%20%20%20%20%20%20%22type%22%3A%20%22Feature%22,%20%20%20%20%20%20%22geometry%22%3A%20%7B%20%20%20%20%20%20%20%20%22type%22%3A%20%22Point%22,%20%20%20%20%20%20%20%20%22coordinates%22%3A%20%5B%20%20%20%20%20%20%20%20%20%202.298151,%20%20%20%20%20%20%20%20%20%2048.855921%20%20%20%20%20%20%20%20%5D%20%20%20%20%20%20%7D,%20%20%20%20%20%20%22properties%22%3A%20%7B%20%20%20%20%20%20%20%20%22icon%22%3A%20%22cp%22,%20%20%20%20%20%20%20%20%22color%22%3A%20%22%23007BFF%22,%20%20%20%20%20%20%20%20%22text-color%22%3A%22%23DC3545%22,%20%20%20%20%20%20%20%20%22text-outline-color%22%3A%22%23007BFF%22,%20%20%20%20%20%20%20%20%22outline-width%22%3A%2220px%22,%20%20%20%20%20%20%20%20%22label%22%3A%20%22You%20are%20here%22,%20%20%20%20%20%20%20%20%22size%22%3A%20%22large%22%20%20%20%20%20%20%7D%20%20%20%20%7D%20%20%5D%7D&key=your_API_Key             
```

------
#### [ Response image ]

![\[Contoh peta yang menunjukkan lingkaran kedekatan di sekitar Menara Eiffel.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/mapsV2/addPproximityCircleStaticMap.png)


------

# Mengelola biaya dan penggunaan
<a name="maps-whats-next"></a>

Saat Anda terus belajar tentang peta Lokasi Amazon, penting untuk memahami cara mengelola kapasitas layanan, memastikan Anda mengikuti batas penggunaan, dan mendapatkan hasil terbaik melalui pengoptimalan kuota dan API. Dengan menerapkan praktik terbaik untuk kinerja dan akurasi, Anda dapat menyesuaikan aplikasi Anda untuk menangani kueri terkait tempat secara efisien dan memaksimalkan permintaan API Anda.

**Topics**
+ [Praktik terbaik untuk Amazon Location Service](maps-best-practices.md)
+ [Harga peta](maps-pricing.md)
+ [Kuota peta dan penggunaan](map-quota-and-usage.md)

# Praktik terbaik untuk Amazon Location Service
<a name="maps-best-practices"></a>

Saat bekerja dengan Amazon Location Service, mengikuti praktik terbaik memastikan peta Anda dioptimalkan untuk kinerja, akurasi, dan pengalaman pengguna. Bagian ini menguraikan pertimbangan utama untuk bekerja dengan peta statis, batas geografis, dan data GeoJSON untuk meningkatkan fungsionalitas dan visualisasi peta.

## Peta dinamis
<a name="next-dynamic-maps"></a>

Berikut ini adalah beberapa praktik terbaik untuk bekerja dengan peta dinamis di Amazon Location Service.

### Rendering optimasi dengan MapLibre
<a name="next-dynamic-rendering"></a>

Berikut ini adalah beberapa fitur MapLibre yang membantu mengoptimalkan rendering untuk gaya AWS peta. Untuk informasi selengkapnya, lihat [AWS gaya peta dan fitur](map-styles.md).

#### Lewati validasi gaya
<a name="next-dynamic-validation"></a>

Jika Anda menggunakan gaya AWS peta, atur `validateStyle` ke`false`. Ini akan mematikan validasi gaya load-time, mempercepat pemuatan peta awal. Validasi gaya tidak diperlukan dengan gaya AWS peta, karena sudah divalidasi sebelumnya.

------
#### [ Example ]

```
const map = new maplibregl.Map({
    container: 'map', // ID of the div where the map will render
    style: `https://maps.geo.${awsRegion}.amazonaws.com/v2/styles/${mapStyle}/descriptor?key=${apiKey}`, // Map style URL
    center: [0, 0], // Starting position [lng, lat]
    zoom: 2, // Starting zoom
    validateStyle: false, // Disable style validation for faster map load
});
```

------
#### [ Explanation ]
+ `validateStyle: true`: Ini memungkinkan validasi gaya peta terhadap spesifikasi gaya MapLibre GL. Jika ada masalah dalam gaya, mereka akan masuk ke konsol.
+ Jika Anda menyetelnya`false`, peta akan melewati proses validasi gaya, yang mungkin menghasilkan pemuatan lebih cepat, tetapi tanpa pemeriksaan kesalahan.

------

#### Pra-hangatkan peta
<a name="next-dynamic-prewarm"></a>

Untuk aplikasi satu halaman (SPAs) yang dapat membuat dan menghancurkan peta berkali-kali saat pengguna menavigasi melalui aplikasi, fungsi pra-hangat dapat mengurangi penundaan dalam membuat ulang peta setelah dihancurkan. 

Fitur ini hanya disarankan untuk SPAs.

## Peta statis
<a name="next-static-maps"></a>

### Batas, kotak pembatas (kotak)
<a name="bounds-bbox"></a>

Saat bekerja dengan peta dan data geografis, menentukan parameter bounding box (`bbox`) dan batas secara akurat sangat penting, karena menentukan wilayah geografis yang diminati. Ketidakakuratan apa pun dapat menyebabkan hasil yang tidak diinginkan.

**Pastikan batas yang tepat**  
Pastikan batas yang ditentukan secara tepat mewakili wilayah yang ingin Anda tampilkan. Bahkan sedikit ketidakakuratan dapat memotong atau mengecualikan bagian dari area yang diinginkan, mengalahkan tujuan visualisasi.

**Verifikasi tingkat zoom yang sesuai**  
Tingkat zoom peta secara otomatis dihitung berdasarkan batas atau bbox yang ditentukan. Verifikasi bahwa tingkat zoom yang dihasilkan memberikan detail dan visibilitas yang sesuai untuk seluruh area yang diminati. Jika zoom terlalu tinggi atau rendah, peta mungkin gagal menyampaikan informasi yang diinginkan secara efektif.

**Periksa visibilitas overlay khusus**  
Saat menggunakan bbox atau batas dengan overlay khusus seperti fitur GeoJSON, pastikan luas fitur berada dalam gambar peta yang dihasilkan. Fitur yang melampaui batas dapat dipotong atau dihilangkan, yang mengarah ke visualisasi yang tidak lengkap atau menyesatkan.

**Gunakan padding dengan bbox**  
Gunakan bbox bersama dengan parameter padding untuk memastikan fitur peta di dekat tepi sepenuhnya terlihat dan tidak terputus.

Dengan mendefinisikan parameter bbox dan batas secara akurat, Anda dapat memastikan peta Anda mewakili area geografis yang diinginkan dengan benar, memberikan tingkat detail yang sesuai, dan secara efektif menggabungkan overlay khusus atau lapisan data.

## GeoJSON
<a name="geojson-best-practices"></a>

Saat menggunakan data GeoJSON, mengoptimalkan string kueri dengan memperkecil GeoJSON dapat membantu Anda tetap berada dalam batas string kueri, terutama untuk kumpulan data besar.

# Harga peta
<a name="maps-pricing"></a>

Amazon Location Service menawarkan harga yang kompetitif untuk Maps API berdasarkan jenis permintaan peta dan jumlah panggilan API yang dilakukan. Bagian ini memberikan gambaran umum tentang struktur harga untuk peta dinamis dan statis. 

Untuk informasi harga terperinci, lihat [harga Amazon Location Service](https://aws.amazon.com/location/pricing/).

## Peta dinamis
<a name="dynamic-maps-pricing"></a>

Harga untuk Maps API didasarkan pada jumlah ubin yang diambil oleh API `GetTiles`

Terkait peta lainnya APIs, seperti, `GetGlyphs``GetStyleDescriptor`, dan `GetSprites` tidak dikenai biaya.

## Gambar peta statis
<a name="static-maps-pricing"></a>

Harga untuk gambar peta statis didasarkan pada jumlah permintaan yang dibuat ke `GetStaticMap` API. Setiap permintaan untuk gambar peta statis dihitung dalam perhitungan harga.

# Kuota peta dan penggunaan
<a name="map-quota-and-usage"></a>

Amazon Location Service memberlakukan kuota layanan dan batas penggunaan khusus untuk peta dinamis dan statis. Batasan ini diberlakukan untuk memastikan penggunaan yang adil dan efisiensi kinerja di semua pengguna. Di bawah ini adalah kuota layanan dan batas yang dapat disesuaikan untuk setiap layanan.

## Kuota layanan
<a name="service-quota"></a>

Amazon Location Service menetapkan kuota default APIs untuk membantu mengelola kapasitas layanan, yang dapat dilihat di konsol [manajemen kuota AWS layanan](https://console.aws.amazon.com/servicequotas/home#!/services/geo/quotas). Anda dapat meminta peningkatan kuota melalui [konsol swalayan](https://console.aws.amazon.com/servicequotas/home#!/services/geo/quotas), hingga dua kali batas default untuk setiap API. 

Untuk batas kuota melebihi dua kali batas default, minta melalui konsol layanan mandiri dan secara otomatis akan mengirimkan tiket dukungan. Bergantian, terhubung dengan tim dukungan premium Anda. 

Tidak ada biaya langsung untuk permintaan peningkatan kuota, tetapi tingkat penggunaan yang lebih tinggi dapat menyebabkan peningkatan biaya layanan berdasarkan sumber daya tambahan yang dikonsumsi. Untuk informasi selengkapnya, lihat [Kelola kuota dengan Service Quotas](manage-quotas.md).

### Peta dinamis
<a name="dynamic-map-quota"></a>


| Nama API | Default | Batas maksimum yang dapat disesuaikan | Lebih dari batas Maks yang Dapat Disesuaikan | 
| --- | --- | --- | --- | 
|  `GetTiles`  |  2000  |  4000  | Permintaan pada [konsol kuota layanan](https://console.aws.amazon.com/servicequotas/home#!/services/geo/quotas) atau hubungi tim dukungan | 

### Peta statis
<a name="static-map-quota"></a>


| Nama API | Default | Batas maksimum yang dapat disesuaikan | Lebih dari batas Maks yang Dapat Disesuaikan | 
| --- | --- | --- | --- | 
|  `GetStaticMap`  |  50  |  100  | Permintaan pada [konsol kuota layanan](https://console.aws.amazon.com/servicequotas/home#!/services/geo/quotas) atau hubungi tim dukungan | 

## Batas penggunaan
<a name="other-usage-limits"></a>


| Nama API | Kuota | Nilai | 
| --- | --- | --- | 
|  `GetStyleDescriptor`  |  Permintaan maksimum, per detik, per alamat IP.  |  5000  | 
|  `GetGlyphys`  |  Permintaan maksimum, per detik, per alamat IP.  | 5000 | 
|  `GetSprites`  |  Permintaan maksimum, per detik, per alamat IP.  | 5000 | 
|  `GetStaticMap`  |  Ukuran muatan respons setelah kompresi.  |  6MB  | 
|  `GetTiles`  |  Ukuran muatan respons setelah kompresi.  |  6MB  | 

## Ketentuan
<a name="terms-to-use"></a>

Lihat informasi yang lebih lengkap di [Ketentuan penggunaan dan atribusi data](data-attribution.md).