Ana içeriğe atla

ggplot2 ile İklim Değişikliği Verilerini Görselleştirme: Adım Adım Eğitim

İklim değişikliği verilerini etkileyici görselleştirmelerle sunmak için R'de ggplot2'yi nasıl kullanacağınızı öğrenin. Bu adım adım eğitim, tarihsel hava durumu verilerini bulma, analiz etme ve görselleştirmeyi öğretir.
Güncel 3 Eki 2026  · 11 dk. oku

Yapay Zeka ile Keşfedin

ChatGPTClaudePerplexity

Bu eğitim, topluluğumuzun değerli bir katkısıdır ve netlik ile doğruluk için DataCamp tarafından düzenlenmiştir.

Kendi uzmanlığınızı paylaşmak ister misiniz? Sizden haber almak isteriz! Makalelerinizi veya fikirlerinizi Topluluk Katkı Formu üzerinden dilediğiniz zaman gönderebilirsiniz.

"Küresel ısınma bir tahmin değil. Gerçekleşiyor" - James Hansen

İklim değişikliği hepimizi etkileyen acil bir meseledir ve veri görselleştirme farkındalık yaratmak için güçlü bir araç olabilir. Bu adım adım eğitimde, R'de ggplot2 kullanarak tarihsel iklim verilerinin etkili görselleştirmelerini nasıl oluşturacağınızı öğreneceksiniz. Bu rehberin sonunda, seçilmiş veri kümelerini nasıl bulacağınızı, tarihsel hava durumu verilerini nasıl çizeceğinizi ve grafikleri ikna edici bir hikâye anlatacak şekilde nasıl özelleştireceğinizi biliyor olacaksınız.

İklim değişikliği hepimizi etkileyen acil bir meseledir ve veri görselleştirme farkındalık yaratmak için güçlü bir araç olabilir. Bu adım adım eğitimde, R'de ggplot2 kullanarak tarihsel iklim verilerinin etkili görselleştirmelerini nasıl oluşturacağınızı öğreneceksiniz. Bu rehberin sonunda, seçilmiş veri kümelerini nasıl bulacağınızı, tarihsel hava durumu verilerini nasıl çizeceğinizi ve grafikleri ikna edici bir hikâye anlatacak şekilde nasıl özelleştireceğinizi biliyor olacaksınız.

Bu eğitimde, güvenilir ve seçilmiş tarihsel sıcaklık verilerini nerede bulacağınızı ve bunları ggplot2 ile nasıl görselleştireceğinizi öğreneceksiniz.

  • Tarihsel hava durumu verilerini içeren seçilmiş veri kümelerinin nerede bulunacağını bilmek;
  • ggplot2 ile tarihsel hava durumu verilerini çizmeyi rahatça yapabilmek;
  • Hikâyenizi daha iyi anlatmak için ggplot2 grafiklerinizi özelleştirebilmek.

Adım 1: Veriyi Bulma ve Yükleme

Bu eğitime ait veriler Ulusal Çevresel Bilgi Merkezleri (NCEI) sitesinde mevcuttur. NCEI, ABD'deki çevresel veriler için başlıca otoritedir ve iklim, ekosistemler ve su kaynaklarına ilişkin yüksek kaliteli veriler sunar. Global Summary of the Year (GSOY) veri kümesi, şehir ve istasyon bazında tarihsel hava durumu verileri sağlar. Bu eğitim için Berkeley, CA verilerini kullanacağız. Dilerseniz tercih ettiğiniz bir şehri seçebilirsiniz.

Veri read_csv ile yüklenecektir. İlk argüman dosya yoludur; ikinci argüman olan col_select ise R'a hangi sütunları yüklemek istediğinizi söyler. Bu veri kümesinde birkaç değişken bulunduğunu, ancak bizim yalnızca "DATE" ve "TAVG" ile ilgilendiğimizi unutmayın. "DATE" sıcaklığın gözlemlendiği yılı içerir, "TAVG" ise yıllık ortalama sıcaklığı Santigrat cinsinden verir. Mevcut değişkenler hakkında daha fazla bilgi için lütfen veri kümesi el kitabına bakın.

library(readr)2​3df <- read_csv('USC00040693.csv',4            col_select = c("DATE", "TAVG"))5​Rows: 118 Columns: 2── Column specification ────────────────────────────────────────────────────────Delimiter: ","dbl (2): DATE, TAVG

Aşağıda, verinizi ve özet istatistiklerini yazdırarak veriniz hakkında ilk fikri edineceksiniz. R'ın summary() fonksiyonu, verilerin 1893'ten 2019'a kadar uzandığını ve bu dönemde Berkeley, CA'da gözlemlenen en düşük yıllık ortalama sıcaklığın 12,9 ºC olduğunu söylüyor. En yüksek ortalama sıcaklık ise 15,93 ºC.

summary(df)      DATE           TAVG       Min.   :1893   Min.   :12.90   1st Qu.:1926   1st Qu.:13.50   Median :1956   Median :13.91   Mean   :1956   Mean   :13.97   3rd Qu.:1985   3rd Qu.:14.33   Max.   :2019   Max.   :15.93                  NA's   :33     

Adım 2: Eksik Değerlerin İşlenmesi

summary() fonksiyonu 33 eksik sıcaklık değeri olduğunu ortaya koydu. Bir değişkendeki NA'ları doğrulamak için is.na() fonksiyonunu da kullanabilirsiniz; bu fonksiyon, gözlem NA ise TRUE döndürür. Ardından tüm eksik değerleri toplayabilirsiniz. sum() fonksiyonu TRUE değerlerini 1'e dönüştürür.

print(paste("There are", sum(is.na(df$TAVG)), "missing values in this dataset."))[1] "There are 33 missing values in this dataset."

Bir zaman serisiyle çalıştığımız için eksik değerleri doğrusal enterpolasyonla dolduracağız. Bu yöntem, eksik dönem boyunca verinin doğrusal olarak değiştiğini varsayar. Aslında, bir zaman serisini çizgi grafiğiyle çizdiğinizde, veri eksik olmasa bile gözlemler arasındaki aralıklar iki noktayı birleştiren düz bir çizgiyle doldurulur.

Doğrusal enterpolasyon yapmak için imputeTS paketini kullanacağız. Kütüphaneyi kurup yükledikten sonra, na_interpolation() ile eksik değerleri doldurabilirsiniz. İki argüman geçersiniz: İlk olarak, işlemek istediğiniz veri çerçevesi sütunu; ikinci olarak da imputasyon için kullanmak istediğiniz yöntem.

install.packages("imputeTS", quiet = TRUE)
library(imputeTS)Registered S3 method overwritten by 'quantmod':  method            from  as.zoo.data.frame zoo 
df$TAVG <- na_interpolation(df$TAVG, option ="linear")

Adım 3: Grafiğimizin İlk Sürümünü Kodlama

Bir ggplot2 görselleştirmesi katmanlardan oluşur. Aşağıdaki şekilde gösterildiği gibi, her katman bir geom nesnesi içerir; yani grafikte gördüğünüz bir öğe (örneğin çizgiler ve noktalar).

Önce, ggplot() fonksiyonuna bir veri kümesi geçmeniz gerekir. İkinci olarak, değişkenleri bir geom nesnesinin görsel özellikleri olan estetiklere eşleyeceksiniz. Estetikler; örneğin y eksenindeki konum, x eksenindeki konum, renk veya boyuttur. ggplot hakkında daha fazla bilgi için, çok şey öğrendiğim Rick Scavetta'nın Introduction to Data Visualization with ggplot2 kursuna göz atın.

Ggplot2 katmanları. Görsel: Yazar tarafından oluşturulmuştur.

Aşağıda, eşlememiz (aes()) ggplot'a x eksenindeki konumu "DATE" değişkenine, y eksenindeki konumu ise sıcaklığa bağlı hale getirmesini söylüyor. Yalnızca bu katmanı çizerseniz, ggplot'un yalnızca eksenleri göstereceğini unutmayın.

Ayrıca, ggplot kullanmaya başlamadan önce tüm grafiklerimize uygulamak istediğimiz bazı genel ayarları belirleyeceğiz. İlk ayar grafik boyutu ve çözünürlüğü, ikincisi ise tema.

library(ggplot2)options(repr.plot.width = 10, repr.plot.height = 6, repr.plot.res = 150 )theme_set(theme_bw())
axes <- ggplot(data = df, aes(x = DATE, y = TAVG))axes

Şimdi, zaman içindeki sıcaklıkları gösteren noktalarla ikinci bir katman ekleyebilirsiniz. Bu katmanı bir önceki adımda oluşturduğunuz grafiğe ekleyebileceğinizi unutmayın.

dot_plot <- axes + geom_point()dot_plot

Son olarak, çizgileri içeren üçüncü bir katman ekleyebilirsiniz. Çizgilerin gözlemlenen veriyi temsil etmediğini ve dikkatli kullanılmaları gerektiğini savunan yazarlar olduğunu vurgulamak önemlidir. Kapsamlı bir tartışma için Claus O. Wilke'nin Fundamentals of Data Visualization kitabının 13. bölümüne bakın.

dot_plot +geom_line()

Adım 4: Grafiğinizi Özelleştirme

Bu bölümde, grafiğinizi açık, bilgilendirici ve estetik hale getirmek için nasıl özelleştireceğinizi öğreneceksiniz.

Öncelikle, sıcaklıktaki artışı daha görünür kılmak için noktaların renk estetiğini de "TAVG"'ye eşleyeceğiz. Sayısal bir değişken olduğundan ggplot2, sürekli değerleri renklerle temsil etmek için bir gradyan kullanacaktır. Düşük sıcaklıkları ve yüksek sıcaklıkları hangi renklerin temsil edeceğini scale_color_gradient() fonksiyonuyla seçebilirsiniz.

Ayrıca, x ve y ekseni etiketlerini sırasıyla xlab() ve ylab() ile belirleyebilirsiniz. ggtitle() ile bir başlık eklenebilir. Son olarak, noktaların boyutunu artıracak ve üst üste binen verileri görünür kılmak için saydamlık ekleyeceğiz.

ggplot(data = df, aes(x = DATE, y = TAVG, color = TAVG))+geom_point(size = 7, alpha = 0.8)+scale_color_gradient(name = "ºC", low = "#47BEFB", high = "#ED6AA8")+ggtitle("Historical air temperature trend in Berkeley, CA")+xlab("Year")+ylab("Annual Mean Temperature in Berkeley [ºC]")

Edward Tufte, veri görselleştirme alanında uzman bir isim olarak, yinelenmeyen veriyi göstermek için kullanılan mürekkep oranının en üst düzeye çıkarılmasını önerir. Bunun grafiğinizi daha net hale getirdiğini ve okuyucunuzu dikkat dağıtıcı unsurlardan uzak tuttuğunu savunur.

Kullandığımız ggplot2 teması (theme_bw()) zaten Tufte'nin önerileriyle uyumlu, ancak yukarıdaki grafikte panel ızgaralarını yine de kaldırabiliriz. Bunu yapmak için theme() fonksiyonunu kullanın ve panel.grid.minor = element_blank() ile panel.grid.major = element_blank() argümanlarını geçin.

ggplot(data = df, aes(x = DATE, y = TAVG, color = TAVG))+geom_point(size = 7, alpha = 0.8)+scale_color_gradient(name = "ºC", low =  "#47BEFB", high = "#ED6AA8")+ggtitle("Historical air temperature trend in Berkeley, CA")+xlab("Year")+ylab("Annual Mean Temperature in Berkeley [ºC]")+theme(# Eliminates grids:        panel.grid.minor = element_blank(),        panel.grid.major = element_blank())

Adım 5: Görselleştirmeniz İçin Bir ggplot2 Teması Oluşturma

Şimdi kendi ggplot2 temanızı nasıl oluşturacağınızı öğreneceksiniz. Örnek olarak, grafiğimizi DataCamp web sitesiyle daha tutarlı ve uyumlu hale getirmek için bir theme_datacamp() oluşturacağız.

Önce, ileride kullanmak üzere bazı DataCamp renklerini içeren bir liste oluşturuldu.

datacamp_colors <- list(green = "#74F065",                         darkblue = "#05192D",                         blue = "#47BEFB",                         pink = "#ED6AA8")

İkinci olarak, temamızda kullanmak üzere "Manjari" adlı bir Google Font'u yükleyeceğiz. Bunu "showtext" paketiyle kolayca yükleyebilirsiniz. Eğer yoksa lütfen kurun.

install.packages("showtext", quiet = TRUE)

Aşağıda, paketi yüklüyor ve font_add_google() fonksiyonuyla "Manjari"yi ekliyoruz. Ayrıca showtext_auto() ile R'a metni "showtext" kullanarak oluşturmasını söylüyoruz:

library(showtext)font_add_google("Manjari")showtext_auto()Loading required package: sysfontsLoading required package: showtextdb

Şimdi grafiği özelleştirmek için theme() kullanacağız. Aşağıdaki şekil, kullanabileceğiniz bazı argümanları gösterir. Tam liste için lütfen ggplot2 referansına bakın.

 

Tema argümanları. Görsel: Yazar tarafından oluşturulmuştur.

ggplot2'nin theme() fonksiyonunu çağıran ve özelleştirilmiş özelliklerinizi içeren bir fonksiyonla yeni bir tema oluşturabilirsiniz. Siyah-beyaz temadan (theme_bw()) başlayıp ızgaraları kaldırdığımıza ve arka plan, panel ile metin renklerini değiştirdiğimize dikkat edin. Ayrıca, grafiğe 0,5 cm kenar boşluğu eklendi. Gelecekteki değişiklikleri kolaylaştırmak için kullanıcıların metin, panel ve arka plan renklerini belirtmesi adına iki argüman oluşturuldu.

theme_datacamp <- function(text_panel_color, background_color) {  theme_bw()+  theme(text=element_text(size=28, family="Manjari", face = "bold", color = text_panel_color),    	# Eliminates grids        panel.grid.minor = element_blank(),        panel.grid.major = element_blank(),    	# Changes panel, plot and legend background to dark blue        panel.background = element_rect(fill = background_color),        plot.background = element_rect(fill =  background_color),        legend.background = element_rect(fill= background_color),        # Changes legend texts color to white        legend.text =  element_text(color = text_panel_color,                                     margin = margin(0, 0, 0, -0.5, "cm")),        legend.title = element_text(color = text_panel_color),        legend.text.align = 0,        # Changes color of plot border to white        panel.border = element_rect(size = 1, color = text_panel_color),        # Changes color of axis texts to white        axis.text.x = element_text(color = text_panel_color),        axis.text.y = element_text(color = text_panel_color),        axis.title.x = element_text(color= text_panel_color),        axis.title.y = element_text(color= text_panel_color),        # Changes axis ticks color to white        axis.ticks.y = element_line(color = text_panel_color),        axis.ticks.x = element_line(color = text_panel_color),        # Adds margin        plot.margin = margin(1, 1, 1, 1, "cm")  )}

Artık tercih ettiğiniz renkleri belirterek, grafiğinize doğrudan theme_datacamp() ekleyebilirsiniz. Burada DataCamp renklerini kullandım:

ggplot(data = df, aes(x = DATE, y = TAVG, color = TAVG))+geom_point(size = 7, alpha = 0.8)+scale_color_gradient(name = "ºC", low = datacamp_colors$blue, high = datacamp_colors$pink)+ggtitle("Historical air temperature trend in Berkeley, CA")+xlab("Year")+ylab("Annual Mean Temperature in Berkeley [ºC]")+theme_datacamp(text_panel_color = datacamp_colors$green,                background_color = datacamp_colors$darkblue)

Son olarak, Claus O. Wilke'nin Fundamentals of Data Visualization kitabının 14. bölümünde önerdiği gibi, eğilimi LOESS (yerel olarak tahmin edilen saçılım grafiği düzeltmesi) düzleştiricisiyle gösterebilirsiniz. Bunu, geom_smooth() öğesini içeren bir ggplot katmanı ekleyerek yapabilirsiniz.

ggplot(data = df, aes(x = DATE, y = TAVG, color = TAVG))+geom_point(size = 7, alpha = 0.8)+geom_smooth(color = datacamp_colors$green, se = FALSE)+scale_color_gradient(name = "ºC", low = datacamp_colors$blue, high = datacamp_colors$pink)+ggtitle("Historical air temperature trend in Berkeley, CA",       subtitle = "Visualization using theme_datacamp()")+xlab("Year")+ylab("Annual Mean Temperature in Berkeley [ºC]")+theme_datacamp(text_panel_color = datacamp_colors$green,                background_color = datacamp_colors$darkblue)

Daha etkileyici görselleştirmeler üretmek için farklı renk ve yazı tipi kombinasyonlarını denemekten çekinmeyin. Aşağıda örneğin, LOESS eğrisini, paneli ve metin rengini beyaz olarak değiştiriyorum.

ggplot(data = df, aes(x = DATE, y = TAVG, color = TAVG))+geom_point(size = 7, alpha = 0.8)+geom_smooth(color = "white", se = FALSE)+scale_color_gradient(name = "ºC", low = datacamp_colors$blue, high = datacamp_colors$pink)+ggtitle("Historical air temperature trend in Berkeley, CA",       subtitle = "Visualization using theme_datacamp()")+xlab("Year")+ylab("Annual Mean Temperature in Berkeley [ºC]")+theme_datacamp(text_panel_color = "white",                background_color = datacamp_colors$darkblue)

Sonuç

Bu eğitimde, R'de ggplot2'yi kullanarak tarihsel iklim verilerini etkili şekilde nasıl görselleştireceğinizi öğrendiniz. Güvenilir verilerin temininden özel bir ggplot2 teması oluşturmaya kadar her şeyi ele alarak, veri görselleştirme yoluyla iklim değişikliği konusunda farkındalık yaratma becerileri edindiniz.

Bir sonraki adım olarak, DataCamp'in Introduction to Data Visualization with ggplot2 ve Intermediate R kurslarıyla veri görselleştirme ve R programlamaya daha derinlemesine dalmayı düşünebilirsiniz. Bu kurslar burada edindiğiniz becerileri geliştirmenize ve daha karmaşık projelerin üstesinden gelmenize yardımcı olacaktır.

Konular
R
Veri Analizi
İlgili

blog

Hızlı Sevkiyat İçin Pratik Vibe Kodlama Teknoloji Yığını

Ön uç, arka uç, veritabanları, kimlik doğrulama, depolama, e-posta, test, dağıtım ve izleme için en iyi araçları keşfedin.
Abid Ali Awan's photo

Abid Ali Awan

14 dk.

blog

2026’da En Popüler 40 Yazılım Mühendisi Mülakat Sorusu

Algoritmalar, sistem tasarımı ve davranışsal senaryoları kapsayan bu temel sorularla teknik mülakat sürecine hakim olun. Uzman cevapları, kod örnekleri ve kanıtlanmış hazırlık stratejileri edinin.
Dario Radečić's photo

Dario Radečić

15 dk.

Eğitim

.gitignore Nasıl Kullanılır: Örneklerle Pratik Bir Giriş

Git deponuzu temiz tutmak için .gitignore’u nasıl kullanacağınızı öğrenin. Bu eğitim; temelleri, yaygın kullanım durumlarını ve başlamanıza yardımcı olacak pratik örnekleri kapsar!
Kurtis Pykes 's photo

Kurtis Pykes

8 dk.

Eğitim

Python'da Listeyi String'e Nasıl Dönüştürürsünüz

Bu hızlı eğitimde, Python'da bir listeyi string'e nasıl dönüştüreceğinizi öğrenin.
Adel Nehme's photo

Adel Nehme

Devamını GörDevamını Gör