Visualisasi Data Rekap Produksi Padi di Aceh pada Tahun 2018-2023 dan Jumlah Penduduk Kab. Toba 2023[untuk peta spasial]

knitr::opts_chunk$set(echo = TRUE)

VISUALISASI DATA KATEGORIK

Input Data

library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(ggplot2)
library(readxl)
## Warning: package 'readxl' was built under R version 4.5.2
datapadi <- read_excel("C:/Users/HP/OneDrive/Documents/MATA KULIAH/EKSPLORASI DAN VISUALISASI DATA/rekap-produksi-padi-provinsi-aceh1.xls")
View(datapadi)

Bar Chart

data2023 <- datapadi %>% 
  filter(tahun == 2023)

ggplot(data = data2023, aes(x = nama_kabupaten_kota, y = rekap_produksi_padi)) +
  geom_col() +
  theme(axis.text.x = element_text(angle = 90))
## Warning: Removed 1 row containing missing values or values outside the scale range
## (`geom_col()`).

Bar chart memperlihatkan distribusi produksi padi tahun 2023 menurut kabupaten/kota di Provinsi Aceh. Visualisasi ini menunjukkan adanya variasi produksi antardaerah, sehingga dapat diidentifikasi wilayah dengan produksi tertinggi maupun terendah.

Bar Chart dengan tabel frekuensi

datapadi$kategori_produksi <- cut(datapadi$rekap_produksi_padi,
                              breaks = 3,
                              labels = c("Rendah", "Sedang", "Tinggi"))

freqtab <- as.data.frame(table(datapadi$kategori_produksi))
freqtab
##     Var1 Freq
## 1 Rendah  106
## 2 Sedang   21
## 3 Tinggi    5

Data produksi padi kemudian dikelompokkan ke dalam tiga kategori, yaitu rendah, sedang, dan tinggi. Tabel frekuensi menunjukkan banyaknya data yang masuk ke masing-masing kategori tersebut. Melalui tabel ini, dapat diketahui kategori produksi mana yang paling dominan dan kategori mana yang paling sedikit jumlahnya.

Membuat Bar Chart

ggplot(data = freqtab, mapping = aes(x = Var1, y = Freq)) + 
  geom_bar(stat = "identity")

cara lain

ggplot(data = freqtab, mapping = aes(x = Var1, y = Freq)) + 
  geom_col()

Bar chart frekuensi menampilkan jumlah observasi pada masing-masing kategori produksi padi, yaitu rendah, sedang, dan tinggi. Grafik ini menunjukkan sebaran data berdasarkan kategori. Kategori dengan batang tertinggi menunjukkan kelompok yang paling banyak jumlah datanya, sedangkan kategori dengan batang terendah menunjukkan kelompok yang paling sedikit.

Modifikasi Bar Chart

ggplot(data = freqtab, aes(x = Var1, y = Freq)) + 
  geom_col(fill = "mediumpurple", alpha = 0.7) + 
  labs(title = "Frekuensi Kategori Produksi Padi di Provinsi Aceh", 
       x = "Kategori Produksi Padi", 
       y = "Frekuensi") + 
  geom_text(aes(label = Freq), vjust = -0.25)

Modifikasi bar chart memberikan tampilan visual yang lebih informatif karena dilengkapi judul, label sumbu, warna, serta angka frekuensi di atas batang. Secara isi, grafik ini tetap menunjukkan distribusi jumlah data pada kategori produksi padi. Penambahan label angka membantu pembaca mengetahui frekuensi tiap kategori secara lebih jelas tanpa harus memperkirakan dari tinggi batang.

Needle Chart

ggplot(data = freqtab,
mapping = aes(x = reorder(Var1, Freq), y = Freq)) +
geom_segment(aes(x = reorder(Var1, Freq),
xend = reorder(Var1, Freq),
y = 0, yend = Freq), color = "thistle3") +
geom_point(color = "orchid3", size = 4, alpha = 0.7) +
geom_text(aes(label = Freq), vjust = -1.00) +
coord_flip() +
labs(y = "Frekuensi", 
     x = "Kategori Produksi Padi")

Needle chart menampilkan frekuensi tiap kategori produksi padi dalam bentuk titik dan garis. Grafik ini memiliki makna yang sama dengan bar chart frekuensi, yaitu membandingkan jumlah data pada kategori rendah, sedang, dan tinggi. Perbedaannya terletak pada bentuk visualisasi yang lebih sederhana. Dari grafik ini tetap dapat dilihat kategori mana yang frekuensinya paling besar dan paling kecil.

Grouped Bar Chart

ggplot(data = datapadi,
mapping = aes(x = kategori_produksi, fill = as.factor(tahun))) + 
geom_bar(position = "dodge", stat = "count") +
labs(x = "Kategori Produksi Padi", 
     fill = "Tahun",
     y = "Jumlah Data") +
scale_fill_brewer(palette = "RdPu") +
theme_light()

Grouped bar chart menunjukkan perbandingan kategori produksi padi berdasarkan tahun. Setiap kategori produksi dibandingkan antar tahun melalui batang yang diletakkan berdampingan. Visualisasi ini memudahkan untuk melihat perubahan jumlah data pada kategori rendah, sedang, dan tinggi dari tahun ke tahun. Jika terdapat perbedaan tinggi batang antar tahun, maka hal tersebut menunjukkan adanya perubahan distribusi kategori produksi.

Stacked Bar Chart

ggplot(data = datapadi,
mapping = aes(x = kategori_produksi, fill =as.factor(tahun))) + 
geom_bar(position = "stack", stat = "count") +
labs(x = "Kategori Produksi Padi", 
     fill = "Tahun",
     y = "Jumlah Data") +
scale_fill_brewer(palette = "RdPu") +
theme_light()

Stacked bar chart menampilkan jumlah data pada setiap kategori produksi padi dengan susunan berdasarkan tahun. Grafik ini berguna untuk melihat total jumlah data dalam setiap kategori sekaligus komposisi tiap tahunnya. Semakin tinggi total batang, semakin besar jumlah data pada kategori tersebut. Warna yang berbeda memperlihatkan kontribusi masing-masing tahun terhadap total kategori.

Pie Chart

pertama kita harus menyiapkan data dengan meringkas menjadi tabel frekuensi.

df <- datapadi %>%
  group_by(kategori_produksi) %>%
  summarise(counts = n())
df
## # A tibble: 4 × 2
##   kategori_produksi counts
##   <fct>              <int>
## 1 Rendah               106
## 2 Sedang                21
## 3 Tinggi                 5
## 4 <NA>                   6

Selanjutnya mengitung posisi label teks sebagai jumlah kumulatif proporsi.

df <- df %>%
  arrange(desc(kategori_produksi)) %>%
  mutate(prop = round(counts*100/sum(counts), 1),
         lab.ypos = cumsum(prop) - 0.5*prop)
head(df, 4)
## # A tibble: 4 × 4
##   kategori_produksi counts  prop lab.ypos
##   <fct>              <int> <dbl>    <dbl>
## 1 Tinggi                 5   3.6      1.8
## 2 Sedang                21  15.2     11.2
## 3 Rendah               106  76.8     57.2
## 4 <NA>                   6   4.3     97.7

Setelah itu, kita dapat membuat grafik Pie Chart

ggplot(df, aes(x = "", y = prop, fill = kategori_produksi)) +
  geom_bar(width = 1, stat = "identity", color = "black") +
  geom_text(aes(y = lab.ypos, label = prop), color = "magenta")+
  coord_polar("y", start = 0)+
  ggpubr::fill_palette("RdPu")+
  theme_void()

Pie chart menunjukkan proporsi masing-masing kategori produksi padi terhadap keseluruhan data. Setiap irisan lingkaran mewakili persentase kategori rendah, sedang, atau tinggi. Semakin besar irisan, semakin besar proporsi kategori tersebut dalam data. Dengan pie chart, pembaca dapat melihat kategori produksi mana yang paling mendominasi secara persentase.

Peta Spasial

## Warning: package 'DT' was built under R version 4.5.2
## Warning: package 'sf' was built under R version 4.5.2
## Linking to GEOS 3.13.1, GDAL 3.11.4, PROJ 9.7.0; sf_use_s2() is TRUE

Import Data Excel dan SHP

#Import Data Excel
data.spasial <- read_xlsx(
  "C:/Users/HP/OneDrive/Documents/MATA KULIAH/EKSPLORASI DAN VISUALISASI DATA/jumlah_penduduk_toba_2023.xlsx",
  sheet = 1,
  skip = 2
)
#IMPORT PETA SHP
shp.toba <- read_sf(
  "C:/Users/HP/OneDrive/Documents/MATA KULIAH/EKSPLORASI DAN VISUALISASI DATA/SHP Kab. Toba/ADMINISTRASI_AR_KECAMATAN.shp"
)
head(data.spasial)
## # A tibble: 6 × 6
##   No.   Kecamatan  `Laki-laki` Perempuan Jumlah `Rasio Jenis Kelamin`
##   <chr> <chr>      <chr>       <chr>     <chr>  <chr>                
## 1 <NA>  (1)        (2)         (3)       (4)    (5)                  
## 2 1     Balige     23248       23320     46568  99.69                
## 3 2     Tampahan   2673        2666      5339   100.26               
## 4 3     Laguboti   11564       11815     23379  97.88                
## 5 4     Habinsaran 9277        9088      18365  102.08               
## 6 5     Borbor     4455        4213      8668   105.74

cek nama variabel

names(shp.toba)
##  [1] "NAMOBJ"     "FCODE"      "REMARK"     "METADATA"   "SRS_ID"    
##  [6] "KDBBPS"     "KDCBPS"     "KDCPUM"     "KDEBPS"     "KDEPUM"    
## [11] "KDPBPS"     "KDPKAB"     "KDPPUM"     "LUASWH"     "TIPADM"    
## [16] "WADMKC"     "WADMKD"     "WADMKK"     "WADMPR"     "WIADKC"    
## [21] "WIADKK"     "WIADPR"     "WIADKD"     "UUPP"       "SHAPE_Leng"
## [26] "SHAPE_Area" "geometry"
names(data.spasial)
## [1] "No."                 "Kecamatan"           "Laki-laki"          
## [4] "Perempuan"           "Jumlah"              "Rasio Jenis Kelamin"

Menggabungkan Data

#Menggabungkan Data ke file SHP
shp.toba$WADMKC <- toupper(trimws(shp.toba$WADMKC))
data.spasial$Kecamatan <- toupper(trimws(data.spasial$Kecamatan))
gabung.toba <- left_join(shp.toba, data.spasial, by = c("WADMKC" = "Kecamatan"))
head(gabung.toba)
## Simple feature collection with 6 features and 31 fields
## Geometry type: MULTIPOLYGON
## Dimension:     XY
## Bounding box:  xmin: 98.93711 ymin: 2 xmax: 99.45938 ymax: 2.303353
## Geodetic CRS:  WGS 84
## # A tibble: 6 × 32
##   NAMOBJ  FCODE REMARK METADATA SRS_ID KDBBPS KDCBPS KDCPUM KDEBPS KDEPUM KDPBPS
##   <chr>   <chr> <chr>  <chr>    <chr>  <chr>  <chr>  <chr>  <chr>  <chr>  <chr> 
## 1 Tarutu… BA03… <NA>   TASWIL1… SRGI … <NA>   <NA>   12.02… <NA>   <NA>   <NA>  
## 2 Siatas… BA03… <NA>   TASWIL1… SRGI … <NA>   <NA>   12.02… <NA>   <NA>   <NA>  
## 3 Siboro… BA03… <NA>   TASWIL1… SRGI … <NA>   <NA>   12.02… <NA>   <NA>   <NA>  
## 4 Sipahu… BA03… <NA>   TASWIL1… SRGI … <NA>   <NA>   12.02… <NA>   <NA>   <NA>  
## 5 Pangar… BA03… <NA>   TASWIL1… SRGI … <NA>   <NA>   12.02… <NA>   <NA>   <NA>  
## 6 Garoga  BA03… <NA>   TASWIL1… SRGI … <NA>   <NA>   12.02… <NA>   <NA>   <NA>  
## # ℹ 21 more variables: KDPKAB <chr>, KDPPUM <chr>, LUASWH <dbl>, TIPADM <int>,
## #   WADMKC <chr>, WADMKD <chr>, WADMKK <chr>, WADMPR <chr>, WIADKC <chr>,
## #   WIADKK <chr>, WIADPR <chr>, WIADKD <chr>, UUPP <chr>, SHAPE_Leng <dbl>,
## #   SHAPE_Area <dbl>, geometry <MULTIPOLYGON [°]>, No. <chr>,
## #   `Laki-laki` <chr>, Perempuan <chr>, Jumlah <chr>,
## #   `Rasio Jenis Kelamin` <chr>
str(gabung.toba$Jumlah)
##  chr [1:52] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA "46568" ...
gabung.toba$Jumlah = as.numeric(gabung.toba$Jumlah)
unique(shp.toba$WADMKC)
##  [1] "TARUTUNG"               "SIATAS BARITA"          "SIBORONG-BORONG"       
##  [4] "SIPAHUTAR"              "PANGARIBUAN"            "GAROGA"                
##  [7] "MUARA"                  "AEK BILAH"              "PAMATANG SIDAMANIK"    
## [10] "HATONDUHAN"             "DOLOK PANRIBUAN"        "GIRSANG SIPANGAN BOLON"
## [13] "BANDAR PULAU"           "BANDAR PASIR MANDOGE"   "AEK SONGSONGAN"        
## [16] "RAHUNING"               "BILAH BARAT"            "BILAH HULU"            
## [19] "BALIGE"                 "LAGUBOTI"               "SILAEN"                
## [22] "HABINSARAN"             "PINTU POHAN MERANTI"    "BORBOR"                
## [25] "PORSEA"                 "AJIBATA"                "LUMBAN JULU"           
## [28] "ULUAN"                  "SIGUMPAR"               "SIANTAR NARUMONDA"     
## [31] "NASSAU"                 "TAMPAHAN"               "BONATUA LUNASI"        
## [34] "PARMAKSIAN"             "POLLUNG"                "BAKTIRAJA"             
## [37] "PARANGINAN"             "LINTONG NIHUTA"         "DOLOK SANGGUL"         
## [40] "SIMANINDO"              "ONAN RUNGGU"            "NAINGGOLAN"            
## [43] "PALIPI"                 "RONGGUR NIHUTA"         "PANGURURAN"            
## [46] "SITIO-TIO"              "DOLOK SIGOMPULON"       "KUALUH HULU"           
## [49] "AEK KUO"                "NA IX - X"              "AEK NATAS"             
## [52] "KUALUH SELATAN"
unique(data.spasial$Kecamatan)
##  [1] "(1)"                 "BALIGE"              "TAMPAHAN"           
##  [4] "LAGUBOTI"            "HABINSARAN"          "BORBOR"             
##  [7] "NASSAU"              "SILAEN"              "SIGUMPAR"           
## [10] "PORSEA"              "PINTU POHAN MERANTI" "SIANTAR NARUMONDA"  
## [13] "PARMAKSIAN"          "LUMBAN JULU"         "ULUAN"              
## [16] "AJIBATA"             "BONATUA LUNASI"      "JUMLAH"             
## [19] NA

Pada tahap ini, data atribut jumlah penduduk dari file Excel digabungkan dengan data peta shapefile berdasarkan nama kecamatan. Tujuan penggabungan ini adalah agar setiap wilayah pada peta memiliki informasi jumlah penduduk yang sesuai. Tahap ini sangat penting karena menjadi dasar dalam pembuatan peta tematik.

Peta spasial menunjukkan persebaran jumlah penduduk menurut kecamatan di Kabupaten Toba. Perbedaan warna pada peta merepresentasikan besar kecilnya jumlah penduduk. Kecamatan dengan warna lebih gelap menunjukkan jumlah penduduk yang lebih tinggi, sedangkan warna yang lebih terang menunjukkan jumlah penduduk yang lebih rendah. Visualisasi ini memudahkan pembaca melihat pola persebaran penduduk antarwilayah secara geografis.

Pemetaan data Spasial

plot.toba = ggplot(data=gabung.toba) +
  geom_sf(aes(fill = Jumlah),color="white", size=0.3) +
  scale_fill_distiller("Jumlah Penduduk", palette = "BuPu", na.value = "grey80")

plot.toba

#caralain

library(tmap)
## Warning: package 'tmap' was built under R version 4.5.2
library(mapview)
## Warning: package 'mapview' was built under R version 4.5.2
mapview(gabung.toba, zcol = "Jumlah")

Visualisasi menggunakan mapview menampilkan peta interaktif jumlah penduduk per kecamatan. Keunggulan peta ini adalah pengguna dapat memperbesar, memperkecil, dan meninjau detail wilayah secara langsung. Peta interaktif ini membantu eksplorasi data spasial dengan lebih fleksibel dibandingkan peta statis.

VISUALISASI DATA NUMERIK

Input Data

library(ggplot2)
library(DT)
library(readxl)

padi <- read_excel("C:/Users/HP/OneDrive/Documents/MATA KULIAH/EKSPLORASI DAN VISUALISASI DATA/rekap-produksi-padi-provinsi-aceh1.xls")
DT::datatable(padi)

Histogram

Histogram digunakan untuk melihat distribusi frekuensi dari suatu variabel numerik. Dengan histogram, kita dapat mengetahui bagaimana pola penyebaran data, apakah data cenderung merata, condong ke kiri, atau condong ke kanan. Pada visualisasi ini akan ditampilkan distribusi jumlah produksi padi di Provinsi Aceh berdasarkan data rekap produksi padi yang tersedia. Grafik ini membantu untuk melihat kisaran produksi padi yang paling sering muncul.

library(scales)

ggplot(data = padi, aes(x = rekap_produksi_padi)) +
  geom_histogram(bins = 30, color = "white", fill = "pink") +
  scale_x_continuous(labels = comma) +
  labs(x = "Produksi Padi (Ton)",
       y = "Frekuensi")
## Warning: Removed 6 rows containing non-finite outside the scale range
## (`stat_bin()`).

Pada grafik histogram terlihat bahwa sebagian besar batang berada pada rentang produksi padi yang rendah hingga menengah. Sementara itu terdapat beberapa batang yang memanjang hingga nilai produksi yang sangat tinggi. Hal ini menunjukkan bahwa sebagian besar kabupaten/kota di Aceh memiliki produksi padi yang relatif rendah sampai sedang, sedangkan hanya beberapa wilayah yang memiliki produksi yang jauh lebih tinggi dibandingkan wilayah lainnya. Distribusi data juga terlihat condong ke kanan, yang berarti terdapat sedikit wilayah dengan produksi sangat besar yang menyebabkan ekor distribusi memanjang ke sisi kanan..

Density Plot

Density plot digunakan untuk melihat pola distribusi data secara lebih halus dibandingkan histogram. Grafik ini memperlihatkan bentuk distribusi data sehingga dapat membantu mengidentifikasi apakah data cenderung simetris, miring, atau memiliki lebih dari satu puncak distribusi. Pada visualisasi ini akan ditampilkan distribusi kepadatan produksi padi di Provinsi Aceh.

ggplot(data = padi, aes(x = rekap_produksi_padi)) +
  geom_density(fill = "pink", alpha = 0.7) +
  scale_x_continuous(labels = comma) +
  labs(x = "Produksi Padi (Ton)")
## Warning: Removed 6 rows containing non-finite outside the scale range
## (`stat_density()`).

Pada grafik density terlihat bahwa kurva memiliki puncak di bagian kiri dan kemudian menurun ke arah kanan.Hal ini menunjukkan bahwa nilai produksi padi yang paling sering muncul berada pada rentang produksi yang relatif rendah. Sementara itu semakin ke kanan jumlah datanya semakin sedikit. Bentuk kurva yang condong ke kanan (right skewed) menunjukkan bahwa hanya sebagian kecil wilayah yang memiliki produksi padi yang sangat tinggi dibandingkan wilayah lainnya.

Ridgeline Plot

Ridgeline plot digunakan untuk memvisualisasikan distribusi data dari beberapa kelompok secara terpisah sehingga lebih mudah dibandingkan. Pada visualisasi ini akan ditampilkan distribusi produksi padi pada masing-masing kabupaten/kota di Provinsi Aceh.

library(ggridges)
## Warning: package 'ggridges' was built under R version 4.5.2
ggplot(data = padi,
       aes(x = rekap_produksi_padi,
           y = nama_kabupaten_kota,
           fill = nama_kabupaten_kota)) +
  geom_density_ridges() +
  labs(x = "Produksi Padi (Ton)",
       y = "Kabupaten/Kota")
## Picking joint bandwidth of 4730
## Warning: Removed 6 rows containing non-finite outside the scale range
## (`stat_density_ridges()`).

Ridgeline plot memperlihatkan pola distribusi produksi padi pada setiap kabupaten/kota. Dari grafik tersebut dapat dilihat perbedaan tingkat produksi antar wilayah serta sebaran produksinya. Wilayah dengan kurva yang berada lebih ke kanan menunjukkan tingkat produksi yang lebih tinggi.

Boxplot

Boxplot digunakan untuk menggambarkan sebaran data serta mendeteksi adanya nilai pencilan (outlier). Grafik ini juga memudahkan dalam membandingkan distribusi data antar kelompok. Pada visualisasi ini akan dibandingkan produksi padi berdasarkan kabupaten/kota di Provinsi Aceh.

ggplot(data = padi,
       aes(x = rekap_produksi_padi,
           y = nama_kabupaten_kota,
           fill = nama_kabupaten_kota)) +
  geom_boxplot() +
  theme(legend.position = "none") +
  labs(x = "Produksi Padi",
       y = "Kabupaten/Kota")
## Warning: Removed 6 rows containing non-finite outside the scale range
## (`stat_boxplot()`).

Boxplot memperlihatkan perbandingan produksi padi antar kabupaten/kota serta menunjukkan median, sebaran data, dan kemungkinan adanya nilai pencilan. Kabupaten atau kota yang memiliki garis median lebih tinggi menunjukkan bahwa wilayah tersebut memiliki tingkat produksi padi yang relatif lebih besar. Ukuran kotak yang lebih panjang menunjukkan variasi produksi yang lebih besar. Jika terdapat titik di luar whisker, maka titik tersebut merupakan outlier yang menunjukkan adanya wilayah dengan produksi padi yang jauh lebih tinggi atau lebih rendah dibandingkan wilayah lainnya

Violin Plot

Violin plot merupakan gabungan antara density plot dan boxplot. Grafik ini digunakan untuk melihat distribusi data sekaligus penyebaran nilai secara lebih detail. Pada visualisasi ini akan ditampilkan distribusi keseluruhan produksi padi di Provinsi Aceh.

ggplot(data = padi,
       aes(x = rekap_produksi_padi, y = "Semua Data")) +
  geom_violin(fill="violet", alpha=0.5) +
  geom_boxplot(width=0.1) +
  scale_x_continuous(labels = comma)
## Warning: Removed 6 rows containing non-finite outside the scale range
## (`stat_ydensity()`).
## Warning: Removed 6 rows containing non-finite outside the scale range
## (`stat_boxplot()`).

Pada violin plot terlihat bahwa bagian yang lebih lebar berada pada nilai produksi yang lebih rendah hingga menengah. Hal ini menunjukkan bahwa sebagian besar data produksi padi berada pada rentang tersebut. Sedangkan bagian yang semakin menyempit ke arah kanan menunjukkan bahwa hanya sedikit wilayah yang memiliki produksi padi yang sangat tinggi.

QQ Plot

QQ Plot digunakan untuk memeriksa apakah suatu data mengikuti distribusi normal atau tidak. Grafik ini membandingkan distribusi empiris data dengan distribusi normal teoritis. Pada visualisasi ini akan dilihat apakah data produksi padi di Provinsi Aceh mengikuti distribusi normal atau tidak.

ggplot(data = padi, aes(sample = rekap_produksi_padi)) +
  stat_qq(col="blue") +
  stat_qq_line(col="red")
## Warning: Removed 6 rows containing non-finite outside the scale range
## (`stat_qq()`).
## Warning: Removed 6 rows containing non-finite outside the scale range
## (`stat_qq_line()`).

Pada Q-Q plot terlihat bahwa beberapa titik mengikuti garis diagonal merah, tetapi terdapat banyak titik yang menyimpang dari garis tersebut terutama pada bagian ujungnya. Hal ini menunjukkan bahwa data produksi padi tidak sepenuhnya mengikuti distribusi normal. Penyimpangan tersebut kemungkinan disebabkan oleh adanya nilai produksi yang sangat tinggi pada beberapa wilayah, sehingga distribusi data menjadi tidak simetris.

Scatter Plot

Scatter plot digunakan untuk melihat hubungan antara dua variabel numerik. Pada visualisasi ini akan ditampilkan hubungan antara tahun dan jumlah produksi padi di Provinsi Aceh.

ggplot(data = padi,
       aes(x = tahun,
           y = rekap_produksi_padi,
           color = nama_kabupaten_kota)) +
  geom_jitter(width = 0.2, alpha = 0.6) +
  geom_smooth(aes(group = 1),
              method = "lm",
              color = "black",
              se = FALSE) +
  labs(x = "Tahun",
       y = "Produksi Padi (Ton)",
       color = "Kabupaten",
       title = "Scatter Plot Produksi Padi di Provinsi Aceh")
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 6 rows containing non-finite outside the scale range
## (`stat_smooth()`).
## Warning: Removed 6 rows containing missing values or values outside the scale range
## (`geom_point()`).

Berdasarkan scatter plot yang ditampilkan, terlihat hubungan antara tahun dan jumlah produksi padi di berbagai kabupaten/kota di Provinsi Aceh. Titik-titik pada grafik menunjukkan nilai produksi padi pada masing-masing kabupaten pada tahun tertentu. Dengan penggunaan geom_jitter(), titik-titik data menjadi lebih tersebar sehingga mengurangi penumpukan dan memudahkan pengamatan pola distribusi data. Selain itu, ditambahkan garis tren menggunakan geom_smooth() untuk menunjukkan kecenderungan perubahan produksi padi dari waktu ke waktu. Garis tren tersebut membantu menggambarkan apakah produksi padi di Provinsi Aceh cenderung meningkat, menurun, atau relatif stabil selama periode pengamatan.

Line Chart (Tren Produksi)

Line chart digunakan untuk melihat tren perubahan data dari waktu ke waktu. Pada visualisasi ini akan ditampilkan tren produksi padi di Provinsi Aceh berdasarkan tahun pada masing-masing kabupaten/kota.

library(dplyr)
library(ggplot2)

padi_total <- padi %>%
  group_by(tahun) %>%
  summarise(total_produksi = sum(rekap_produksi_padi, na.rm = TRUE))

ggplot(padi_total, aes(x = tahun, y = total_produksi)) +
  geom_line(color = "blue", linewidth = 1.2) +
  geom_point() +
  labs(x = "Tahun",
       y = "Total Produksi Padi Aceh")

Berdasarkan grafik line chart yang ditampilkan, dapat dilihat bahwa total produksi padi di Provinsi Aceh mengalami perubahan dari tahun ke tahun. Grafik ini menunjukkan tren produksi padi yang merupakan hasil akumulasi produksi dari seluruh kabupaten/kota di Provinsi Aceh pada setiap periode waktu. Dari pola garis pada grafik tersebut terlihat bahwa produksi padi tidak selalu berada pada tingkat yang sama setiap tahunnya, melainkan mengalami fluktuasi. Pada beberapa tahun tertentu terlihat adanya peningkatan produksi padi yang ditunjukkan oleh garis yang naik, sedangkan pada tahun lainnya terlihat penurunan produksi yang ditunjukkan oleh garis yang menurun. Visualisasi ini membantu dalam memahami perkembangan produksi padi secara keseluruhan di Provinsi Aceh serta memudahkan dalam mengidentifikasi periode waktu dimana produksi padi mengalami peningkatan maupun penurunan.

Area Plot

Area plot merupakan pengembangan dari line chart yang menambahkan arsiran pada area di bawah garis sehingga perubahan nilai dari waktu ke waktu lebih mudah diamati. Pada visualisasi ini akan ditampilkan tren produksi padi pada salah satu kabupaten/kota di Provinsi Aceh berdasarkan tahun.

ggplot(data = padi, aes(x = tahun, y = rekap_produksi_padi)) +
  geom_line(linewidth = 1.2, col = "darkgreen") +
  geom_area(fill = "green", alpha = 0.3) +
  labs(x = "Tahun", y = "Produksi Padi (Ton)")
## Warning: Removed 6 rows containing non-finite outside the scale range
## (`stat_align()`).

Berdasarkan area plot yang ditampilkan, dapat dilihat bahwa produksi padi di Provinsi Aceh mengalami perubahan dari tahun ke tahun. Area berwarna hijau menunjukkan besarnya produksi padi pada setiap tahun, sehingga semakin tinggi area yang terbentuk maka semakin besar pula jumlah produksi padi pada tahun tersebut. Dari grafik tersebut juga dapat diamati tren kenaikan maupun penurunan produksi padi sepanjang periode pengamatan. Perubahan ini dapat dipengaruhi oleh berbagai faktor seperti luas lahan panen, kondisi cuaca, serta kebijakan di sektor pertanian. Dengan menggunakan area plot, pola perkembangan produksi padi dari waktu ke waktu dapat terlihat dengan lebih jelas karena tidak hanya ditampilkan dalam bentuk garis, tetapi juga melalui area yang merepresentasikan besarnya nilai produksi.

Multiple Line Chart

Multiple line chart digunakan untuk membandingkan tren data deret waktu dari beberapa kelompok secara bersamaan. Pada visualisasi ini akan dibandingkan tren produksi padi pada beberapa kabupaten/kota di Provinsi Aceh. Contoh membandingkan beberapa wilayah:

library(dplyr)

padi2 <- padi %>%
  filter(nama_kabupaten_kota %in% c("Kabupaten Aceh Besar","Kabupaten Aceh Utara","Kabupaten Pidie"))

ggplot(data = padi2, aes(x = tahun,
                         y = rekap_produksi_padi,
                         color = nama_kabupaten_kota)) +
  geom_line(linewidth = 1.2) +
  labs(x = "Tahun",
       y = "Produksi Padi (Ton)",
       color = "Kabupaten")

Berdasarkan grafik multiple line chart yang ditampilkan, dapat dilihat perbandingan tren produksi padi pada Kabupaten Aceh Besar, Aceh Utara, dan Pidie dari tahun ke tahun. Setiap garis pada grafik mewakili satu kabupaten/kota sehingga memudahkan dalam mengamati perubahan produksi padi pada masing-masing wilayah. Dari grafik tersebut terlihat bahwa produksi padi di ketiga kabupaten tersebut mengalami fluktuasi dari waktu ke waktu, dimana pada beberapa tahun terjadi peningkatan produksi yang ditunjukkan oleh garis yang naik, sedangkan pada tahun lainnya terlihat penurunan produksi yang ditunjukkan oleh garis yang menurun. Selain itu, perbedaan ketinggian garis pada grafik menunjukkan bahwa tingkat produksi padi di masing-masing kabupaten tidak sama. Kabupaten yang memiliki garis lebih tinggi menunjukkan tingkat produksi padi yang lebih besar dibandingkan kabupaten lainnya. Dengan menggunakan multiple line chart, perbandingan perkembangan produksi padi antar kabupaten dapat diamati dengan lebih jelas, sehingga memudahkan dalam melihat wilayah mana yang memiliki produksi lebih tinggi serta bagaimana perubahan produksinya dari tahun ke tahun.