
Peta telah digunakan selama berabad-abad untuk membantu orang menavigasi dan memahami lingkungan mereka. Di era big data, peta menjadi alat penting untuk visualisasi data. Peta memungkinkan kita memvisualisasikan data secara intuitif, interaktif, dan mudah dipahami. Peta dapat membantu kita mengidentifikasi pola dan hubungan yang mungkin sulit terlihat pada jenis visualisasi lain.
Plotly adalah pustaka visualisasi data yang kuat untuk Python yang memungkinkan Anda membuat berbagai visualisasi interaktif, termasuk peta. Salah satu keunggulan Plotly adalah kemampuannya bekerja mulus dengan pustaka Python lain, seperti Pandas dan NumPy. Ini memudahkan impor dan manipulasi data serta pembuatan visualisasi yang disesuaikan dengan kebutuhan spesifik Anda. Jika Anda ingin mempelajari Plotly, lihat kursus kami Introduction to Data Visualization with Plotly in Python.
Dalam tutorial ini, Anda akan mempelajari langkah demi langkah cara membuat dan menyesuaikan peta sederhana dan interaktif menggunakan Plotly di Python. Anda juga akan mempelajari cara membuat peta Choropleth, jenis peta khusus yang menggunakan pengodean warna untuk merepresentasikan data pada area geografis tertentu, seperti negara, provinsi, atau kota.
Visualisasi Peta Plotly yang Umum
Mari mulai dengan melihat beberapa jenis peta Plotly yang dapat Anda buat.
Plot ScatterGeo
Fungsi Scattergeo() digunakan untuk membuat plot sebar pada peta geografis. Artinya, fungsi ini dapat membantu Anda memplot titik pada peta di mana setiap titik merepresentasikan lokasi geografis tertentu, seperti kota atau tengara.
Sebagai contoh, jika Anda memiliki dataset yang berisi koordinat lintang dan bujur dari berbagai kota di seluruh dunia, Anda dapat menggunakan Scattergeo() untuk memplot setiap kota pada peta dunia.
Setiap titik pada peta akan merepresentasikan lokasi kota tertentu, dan Anda dapat menyesuaikan ukuran, warna, dan bentuk tiap titik untuk merepresentasikan karakteristik berbeda dari kota-kota tersebut, seperti populasi atau suhu.
Fungsi ini umum digunakan dalam aplikasi visualisasi dan analisis data, seperti prakiraan cuaca, analisis populasi, dan pemetaan bisnis. Ini dapat membantu Anda memvisualisasikan data dengan lebih bermakna dengan menunjukkan sebaran spasial titik data Anda serta menyoroti pola atau tren yang mungkin tidak terlihat pada tabel atau bagan.
Contoh membuat plot ScatterGeo di Plotly
import plotly.express as px
import pandas as pd
# Import data from USGS
data = pd.read_csv('https://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/all_month.csv')
# Drop rows with missing or invalid values in the 'mag' column
data = data.dropna(subset=['mag'])
data = data[data.mag >= 0]
# Create scatter map
fig = px.scatter_geo(data, lat='latitude', lon='longitude', color='mag',
hover_name='place', #size='mag',
title='Earthquakes Around the World')
fig.show()
Keluaran:

Contoh kode ini menggunakan Plotly untuk membuat peta geo interaktif lokasi gempa di seluruh dunia. Kode ini mengimpor data gempa dari situs USGS ke dalam pandas DataFrame dan menghapus baris yang memiliki nilai magnitudo hilang atau tidak valid.
Kemudian, kode menggunakan metode px.scatter_geo untuk membuat peta sebar yang menampilkan lokasi gempa, dengan gempa yang lebih besar ditunjukkan dengan warna yang lebih gelap. Parameter hover_name diatur untuk menampilkan nama lokasi saat penunjuk diarahkan ke penanda.
Terakhir, kode menetapkan judul peta dan menampilkannya menggunakan fig.show(). Jenis peta ini dapat digunakan untuk mengeksplorasi pola gempa dan memperoleh wawasan tentang aktivitas seismik global.
Kustomisasi plot dasar
1. Mengubah skala warna: Parameter color pada fungsi scatter_geo memetakan magnitudo gempa ke warna penanda. Anda dapat menyesuaikan skala warna agar lebih merepresentasikan nilai magnitudo.
fig = px.scatter_geo(data, lat='latitude', lon='longitude', color='mag',
hover_name='place', color_continuous_scale='reds',
title='Earthquakes Around the World')
fig.show()
Keluaran:

2. Mengubah ukuran penanda: Anda dapat menyesuaikan ukuran penanda agar lebih merepresentasikan magnitudo gempa.
fig = px.scatter_geo(data, lat='latitude', lon='longitude', color='mag',
hover_name='place', size='mag', size_max=10,
title='Earthquakes Around the World')
fig.show()
Keluaran:

3. Mengubah warna latar: Anda dapat mengubah warna latar peta agar lebih menarik secara visual.
fig = px.scatter_geo(data, lat='latitude', lon='longitude', color='mag',
hover_name='place', color_continuous_scale='reds',
title='Earthquakes Around the World')
fig.update_layout(geo=dict(bgcolor='black'))
fig.show()

Jika Anda ingin mempelajari lebih lanjut tentang kemungkinan visualisasi dan kustomisasi lanjutan di Plotly, lihat Python Plotly Express Tutorial: Unlock Beautiful Visualizations oleh Bekhruz Tuychiev.
Menyimpan peta sebagai file HTML interaktif
Anda dapat menyimpan figur Plotly sebagai file HTML menggunakan fungsi write_html() dari modul plotly.io. Berikut contohnya:
import plotly.io as pio
pio.write_html(fig, file='earthquakes.html', auto_open=True)

Peta Choropleth
Peta choropleth adalah jenis peta yang menggunakan warna atau bayangan berbeda untuk merepresentasikan nilai data di berbagai wilayah, seperti negara, provinsi, atau negara bagian. Pada peta choropleth, setiap wilayah diberi warna sesuai dengan nilai variabel data tertentu, seperti populasi, pendapatan, atau suhu.
Peta choropleth dapat digunakan dalam berbagai aplikasi, seperti pemetaan pemilu, analisis demografis, dan visualisasi data geografis. Peta ini dapat membantu Anda melihat pola dan tren dalam data yang mungkin tidak tampak pada tabel atau bagan, serta memberikan cara yang kuat untuk menyampaikan informasi kepada audiens Anda.
Meskipun fungsi scatter_geo dan Choropleth di Plotly sama-sama digunakan untuk membuat visualisasi geografis, keduanya berbeda dalam jenis data yang paling cocok serta cara merepresentasikan data tersebut pada peta. Fungsi scatter_geo paling tepat digunakan untuk memplot titik data individual pada peta, di mana setiap titik merepresentasikan lokasi geografis tertentu, seperti kota, tengara, atau gempa.
Sebaliknya, fungsi Choropleth digunakan untuk memvisualisasikan data yang diagregasi atau dirata-ratakan di seluruh wilayah, seperti negara, provinsi, atau negara bagian. Setiap wilayah diarsir atau diwarnai sesuai dengan nilai variabel data tertentu, seperti kepadatan penduduk, pendapatan rata-rata, atau tingkat pengangguran.
Contoh membuat peta Choropleth di Plotly
import plotly.express as px
import pandas as pd
# Import data from GitHub
data = pd.read_csv('https://raw.githubusercontent.com/plotly/datasets/master/gapminder_with_codes.csv')
# Create basic choropleth map
fig = px.choropleth(data, locations='iso_alpha', color='gdpPercap', hover_name='country',
projection='natural earth', title='GDP per Capita by Country')
fig.show()
Keluaran:

Perhatikan bahwa kita memiliki rentang waktu pada dataframe year. Rentang ini dari 1952 hingga 2007. Kita dapat menggunakan dimensi ini untuk menganimasikan visualisasi. Lihat contoh di bawah.
Contoh Dataset:

import plotly.express as px
import pandas as pd
# Import data from GitHub
data = pd.read_csv('https://raw.githubusercontent.com/plotly/datasets/master/gapminder_with_codes.csv')
# Create basic choropleth map
fig = px.choropleth(data, locations='iso_alpha', color='gdpPercap', hover_name='country',
projection='natural earth', animation_frame='year',
title='GDP per Capita by Country')
fig.show()
Keluaran:

Kesimpulan
Peta sangat penting untuk visualisasi data di era big data. Plotly adalah pustaka visualisasi data yang kuat untuk Python yang memungkinkan Anda membuat berbagai peta interaktif. Dengan Scattergeo, Anda dapat memplot titik data yang sesuai dengan lokasi geografis tertentu, sementara Choropleth ideal untuk memvisualisasikan data teragregasi di berbagai dimensi seperti wilayah, kota, negara, dan sebagainya.
Jika Anda tertarik mengeksplorasi opsi kustomisasi lanjutan di Plotly atau ingin mempelajari lebih lanjut kemampuannya, lihat Python Plotly Express Cheat Sheet, yang menyediakan referensi cepat untuk fungsi dan opsi Plotly yang paling umum digunakan.

