For English click

İzmir Büyükşehir Belediyesi gerek Türkiye’deki veri literatürüne gerek kendi belediyelerinin yönetim mekanizmasına katkı sağlayacak bir hizmet ile İstanbul Büyükşehir Belediyesi’nden sonra Türkiye’de veri portalı açan ikinci anakent belediyesi oldu.

Ben de bu açık veri portalının en popüler verilerinden olan metro durakları verisini kullanarak leaflet paketi yardımıyla bu durakları lokasyonlarını interaktif bir harita üzerinde görselleştirdim.

Veriyi bu adresten indirebilirsiniz.

Leaflet ile ilgili tutorial/öğretici için lütfen tıklayınız.

Öncelikle veri setimizi csv dosyası olarak okutalım.

d<-read.csv("metro-istasyonlar.csv",header=T,sep=";")
head(d)
##   ï..Ä.stasyon.Id     Ä.stasyon.AdÄ. Ä.stasyon.SÄ.rasÄ. AktifMi Longitude
## 1              12           Evka - 3                  1    True   27.2289
## 2              11  Ege Ãœniversitesi                  2    True   27.2283
## 3              10            Bornova                  3    True   27.2128
## 4               9             Bölge                  4    True   27.2008
## 5               8             Sanayi                  5    True   27.1900
## 6               7            Stadyum                  6    True   27.1808
##   Latitude
## 1  38.4656
## 2  38.4600
## 3  38.4586
## 4  38.4547
## 5  38.4481
## 6  38.4425

Veri setindeki karakter bozuklukları bizim için şu an sorun değil, bizim burada asıl kullancağımız değişkenler Latitude ve Longitude değerleri.

Veri setini okuttuktan sonra leaflet kullanarak İzmir haritasını oluşturalım. Bunun için İzmir’i merkez alan enlem ve boylam değerlerine ihtiyacımız var ki onlar da sırasyıla 27.142826 ve 38.423733 değerleri.

Şimdi sadece üç komut kullanarak İzmir haritamızı oluşturuyoruz.

İlk kodumuz htmlwidges kullanarak Leaflet haritası oluşturan leaflet() komutu, daha sonra pipe operatörü yardımıyla ikinci kodumuz olan setView() kullanıyoruz. Bu komut haritamızın göstereceği yerin ayarlanmasında kullanılıyor. Daha sonra addTiles() komutuyla haritamızı oluşturacak grafik elementleri ve layer(katmanlarını) ekliyoruz.

Tiles komutunun içinde haritayı farklı görünümlerle çizdiren opsiyonlar olmasına rağmen, ben burada default görseli kullanıyorum.

İşte İzmir haritası.

library(leaflet)
## Warning: package 'leaflet' was built under R version 3.6.3
leaflet()%>%setView(lng=27.142826, lat=38.423733, zoom=11)%>%addTiles()

Şimdi ise addMarkers komutu ile metro istasyonlarının olduğu bölgelere lokasyon işareti ekleyeceğiz.

Tek yapmamız gereken bu komutun içindeki lng ve lat argümanlarına metro istasyonlarının latitude ve longitude değerlerini yazmak.

Dikkat değerlerimiz numeric sınıfında objeler olmalı. İşte haritamız.

leaflet()%>%setView(lng=27.142826, lat=38.423733, zoom=11)%>%addTiles()%>%addMarkers(lng=as.numeric(d$Longitude), lat= as.numeric(d$Latitude))

GitHub

Soru, görüş ve öneri için: