Inisialisasi library

library(tidyverse) 
## Warning: package 'tidyverse' was built under R version 4.3.3
## Warning: package 'ggplot2' was built under R version 4.3.3
## Warning: package 'tibble' was built under R version 4.3.3
## Warning: package 'tidyr' was built under R version 4.3.3
## Warning: package 'readr' was built under R version 4.3.3
## Warning: package 'purrr' was built under R version 4.3.3
## Warning: package 'dplyr' was built under R version 4.3.3
## Warning: package 'stringr' was built under R version 4.3.3
## Warning: package 'forcats' was built under R version 4.3.3
## Warning: package 'lubridate' was built under R version 4.3.3
## -- Attaching core tidyverse packages ------------------------ tidyverse 2.0.0 --
## v dplyr     1.1.4     v readr     2.1.5
## v forcats   1.0.0     v stringr   1.5.1
## v ggplot2   3.5.1     v tibble    3.2.1
## v lubridate 1.9.3     v tidyr     1.3.1
## v purrr     1.0.2     
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
## i Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(dplyr)
library(reshape2)
## Warning: package 'reshape2' was built under R version 4.3.3
## 
## Attaching package: 'reshape2'
## 
## The following object is masked from 'package:tidyr':
## 
##     smiths
library(ggforce)
## Warning: package 'ggforce' was built under R version 4.3.3
library(readxl)
## Warning: package 'readxl' was built under R version 4.3.3
library(ggcorrplot)
## Warning: package 'ggcorrplot' was built under R version 4.3.3

Visualisasi Korelasi

Data

datavisdat <- read_excel("C:/Users/roihan/Downloads/DataVisdat.xlsx", sheet='Regresi')
str(datavisdat)
## tibble [27 x 2] (S3: tbl_df/tbl/data.frame)
##  $ Luas_Tanam   : num [1:27] 81843 156947 156882 98215 135295 ...
##  $ Produksi_Padi: num [1:27] 281153 515136 639006 303919 452260 ...
ggplot(datavisdat, aes(x = Luas_Tanam, y = Produksi_Padi, color='Produksi Padi')) +
  geom_point() +  
  labs(title = "Scatter Plot", x = "Luas tanam (Ha)", y = "Produksi Padi (Ton)") +
  theme_classic()

Grafik di atas merupakan grafik hubungan antara dua peubah numerik (Luas Tanam Padi dan Produksi Pado). Berdasarkan Scatter Plot tersebut, dapat terlihat bahwa Luas Tanam dan Produksi padi memiliki korelasi yang positif, yaitu semakin meningkatnya luas tanam, maka produksi padi pun akan semakin meningkat

Visualisasi Time Series

Data

datavisdat <- read_excel("C:/Users/roihan/Downloads/DataVisdat.xlsx", sheet='Time Series')
str(datavisdat)
## tibble [144 x 2] (S3: tbl_df/tbl/data.frame)
##  $ Timestamp: POSIXct[1:144], format: "2023-12-15 00:00:00" "2023-12-15 00:10:00" ...
##  $ Humidity : num [1:144] 88 86 85 77 77 73 70 70 67 69 ...
ggplot(datavisdat, aes(x = Timestamp,  y = Humidity)) +
  geom_point() +
  geom_line() +
  labs(title = "Scatter Plot Humidity in 15 December 2023",
       x = "Time",
       y = "Humidity")

Grafik di atas merupakan grafik deret waktu dari tingkat kelembaban di kota Bogor pada 15 Desember 2023. Berdasarkan grafik tersebut, dapat terlihat bahwa tingkat kelembaban di Kota Bogor cukup fluktuatif. Dari pukul 00:00 sampai 06:00 tingkat kelembaban udara mengalami penurunan, sedangkan dari pukul 06:00 sampai 16:00 tingkat kelembaban udara cenderung meningkat dengan titik maksimum berada di sekitar pukul 18:00.

Visualisasi Correlogram

Data

datavisdat <- read_excel("C:/Users/roihan/Downloads/TA Anreg 8.xlsx", sheet='Dt8Visdat')
str(datavisdat)
## tibble [27 x 8] (S3: tbl_df/tbl/data.frame)
##  $ Produksi : num [1:27] 281153 515136 639006 303919 452260 ...
##  $ Luas     : num [1:27] 81843 156947 156882 98215 135295 ...
##  $ Petani   : num [1:27] 5.94 11.3 9.46 5.13 10.25 ...
##  $ Urea     : num [1:27] 0.27 0.32 0.28 0.42 0.72 0.55 0.19 0.31 0.28 0.32 ...
##  $ NPK      : num [1:27] 0.18 0.3 0.21 0.23 0.6 0.36 0.23 0.14 0.23 0.17 ...
##  $ Wirausaha: num [1:27] 115460 267910 220650 72629 219425 ...
##  $ Teknologi: num [1:27] 3 111 90 46 3 36 38 44 17 41 ...
##  $ Harga B  : num [1:27] 11369 12012 13547 12100 11000 ...
data_numerik <- select_if(datavisdat, is.numeric) 
str(data_numerik)
## tibble [27 x 8] (S3: tbl_df/tbl/data.frame)
##  $ Produksi : num [1:27] 281153 515136 639006 303919 452260 ...
##  $ Luas     : num [1:27] 81843 156947 156882 98215 135295 ...
##  $ Petani   : num [1:27] 5.94 11.3 9.46 5.13 10.25 ...
##  $ Urea     : num [1:27] 0.27 0.32 0.28 0.42 0.72 0.55 0.19 0.31 0.28 0.32 ...
##  $ NPK      : num [1:27] 0.18 0.3 0.21 0.23 0.6 0.36 0.23 0.14 0.23 0.17 ...
##  $ Wirausaha: num [1:27] 115460 267910 220650 72629 219425 ...
##  $ Teknologi: num [1:27] 3 111 90 46 3 36 38 44 17 41 ...
##  $ Harga B  : num [1:27] 11369 12012 13547 12100 11000 ...
data_melt <- cor(data_numerik[sapply(data_numerik,is.numeric)])
data_melt <- melt(data_melt) 

ggplot(data_melt, aes(Var1, Var2, fill = value)) +
  geom_tile(color = "white") +
  scale_fill_gradient2(low = "darkblue", mid = "white", high = "maroon", midpoint = 0, limits = c(-1,1), name="Korelasi") +
  labs(title = "Corellogram") +
  theme_minimal() +
  theme(axis.text.x = element_text(angle = 45, vjust = 1, hjust=1))

Grafik di Atas merupakan grafik korelasi dari Produksi Beras dan Peubah penjelas lainnya, seperti Luas Tanam, Jumlah Petani, dll. Berdasarkan grafik tersebut, dapat terlihat bahwa korelasi positif terkuat yaitu pada korelasi peubah Produksi dengan Luas Tanam dengan koefisien korelasi mendekati 1, sedangkan korelasi negatif terlemah yaitu pada korelasi peubah Luas dan Harga Beras yang mempunyai korelasi mendekati -1

Visualisasi Geospasial

library("sf")
## Warning: package 'sf' was built under R version 4.3.3
## Linking to GEOS 3.11.2, GDAL 3.8.2, PROJ 9.3.1; sf_use_s2() is TRUE
library(tidygeocoder)
## Warning: package 'tidygeocoder' was built under R version 4.3.3
datavisdat <- read_excel("C:/Users/roihan/Downloads/DataVisdat.xlsx", sheet='Geospasial')
datavisdat
## # A tibble: 38 x 2
##    PROVINSI             Produktivitas
##    <chr>                        <dbl>
##  1 ACEH                          55.2
##  2 SUMATERA UTARA                51.4
##  3 SUMATERA BARAT                49.3
##  4 RIAU                          39.7
##  5 JAMBI                         45.1
##  6 SUMATERA SELATAN              56.2
##  7 BENGKULU                      49.5
##  8 LAMPUNG                       52.0
##  9 KEP. BANGKA BELITUNG          43.5
## 10 KEP. RIAU                     28.1
## # i 28 more rows
my_sf <- read_sf("C:/Users/roihan/Downloads/BATAS PROVINSI DESEMBER 2019 DUKCAPIL/BATAS_PROVINSI_DESEMBER_2019_DUKCAPIL.shp")
my_sf
## Simple feature collection with 34 features and 4 fields
## Geometry type: MULTIPOLYGON
## Dimension:     XYZ
## Bounding box:  xmin: 95.01079 ymin: -11.00762 xmax: 141.0194 ymax: 6.07693
## z_range:       zmin: 2.65e-05 zmax: 2.65e-05
## Geodetic CRS:  WGS 84
## # A tibble: 34 x 5
##    OBJECTID PROVINSI             Shape_Leng Shape_Area                  geometry
##       <dbl> <chr>                     <dbl>      <dbl>        <MULTIPOLYGON [°]>
##  1        1 ACEH                      27.5      4.63   Z (((97.39178 2.037481 2~
##  2        2 BALI                       6.03     0.459  Z (((115.1251 -8.847606 ~
##  3        3 BANTEN                     9.28     0.765  Z (((105.5498 -6.995661 ~
##  4        4 BENGKULU                  11.7      1.63   Z (((102.3862 -5.471439 ~
##  5        5 DAERAH ISTIMEWA YOG~       3.34     0.260  Z (((110.8198 -8.203577 ~
##  6        6 DKI JAKARTA                3.12     0.0534 Z (((106.8768 -6.1003 2.~
##  7        7 GORONTALO                 11.0      0.978  Z (((121.4254 0.4124347 ~
##  8        8 JAMBI                     11.8      3.98   Z (((104.4071 -0.863707 ~
##  9        9 JAWA BARAT                11.6      3.03   Z (((108.685 -6.769898 2~
## 10       10 JAWA TENGAH               15.5      2.82   Z (((108.8835 -7.748463 ~
## # i 24 more rows
library(ggthemes)
## Warning: package 'ggthemes' was built under R version 4.3.3
library(ggrepel)
## Warning: package 'ggrepel' was built under R version 4.3.3
library(ggmap)
## Warning: package 'ggmap' was built under R version 4.3.3
## i Google's Terms of Service: <https://mapsplatform.google.com>
##   Stadia Maps' Terms of Service: <https://stadiamaps.com/terms-of-service/>
##   OpenStreetMap's Tile Usage Policy: <https://operations.osmfoundation.org/policies/tiles/>
## i Please cite ggmap if you use it! Use `citation("ggmap")` for details.
## 
## Attaching package: 'ggmap'
## 
## 
## The following object is masked from 'package:tidygeocoder':
## 
##     geocode
datavisdat$PROVINSI <- toupper(datavisdat$PROVINSI)
Persen.Geo <- merge(x=my_sf, y=datavisdat, by="PROVINSI",all.x = TRUE, all.y=TRUE)
ggplot(Persen.Geo) +
  geom_sf(aes(fill= Produktivitas)
          , color = "#69b3a2") +
  scale_fill_gradient(low="green", high="red") +
  theme_void()

Grafik di atas menunjukkan produktivitas padi yang ada di setiap provinsi Indonesia. Dapat terlihat bahwa warna merah menunjukkan daerah yang memiliki produktivitas padi tinggi, sedangkan hijau menunjukkan daerag yang memiliki produktivitas padi rendah. Oleh karena itu, Produktivitas padi tertinggi berada di Jawa Barat dan sebagian dari Sumatera, sedangkan produktivitas padi terendah berada di sekitaran pulau Kalimantan