Seperti yang telah diketahui, data memiliki banyak sekali tipe yang dapat dieksplorasi menggunakan teknik visualisasi sehingga dapat memahami pola, tren, dan hubungan antar variabel secara efektif. Visualisasi yang digunakan bertujuan untuk menyederhanakan informasi yang terlalu kompleks sehingga khalayak umum dapat memahami informasi dengan mudah dan lebih sederhana. Keberagaman tipe data yang digunakan memerlukan sebuah visualisasi yang tepat sehingga dapat dipahami dengan baik oleh pembaca. terdapat beberapa jenis data yang dapat divisualisasikan khususnya yang sering digunakan adalah perbandingan kategori, deret waktu, distribusi, dan data geospasial.
Kesempatan Kali ini, akan memanfaatkan package esquisse untuk membuat visualisasi berdasarkan jenis data yang digunakan.
library(esquisse)
## Warning: package 'esquisse' was built under R version 4.3.3
library(ggplot2)
library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.4 ✔ readr 2.1.5
## ✔ forcats 1.0.0 ✔ stringr 1.5.1
## ✔ lubridate 1.9.3 ✔ tibble 3.2.1
## ✔ purrr 1.0.2 ✔ tidyr 1.3.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(tidymodels)
## ── Attaching packages ────────────────────────────────────── tidymodels 1.1.1 ──
## ✔ broom 1.0.5 ✔ rsample 1.2.0
## ✔ dials 1.2.0 ✔ tune 1.1.2
## ✔ infer 1.0.6 ✔ workflows 1.1.3
## ✔ modeldata 1.3.0 ✔ workflowsets 1.0.1
## ✔ parsnip 1.1.1 ✔ yardstick 1.3.0
## ✔ recipes 1.0.9
## ── Conflicts ───────────────────────────────────────── tidymodels_conflicts() ──
## ✖ scales::discard() masks purrr::discard()
## ✖ dplyr::filter() masks stats::filter()
## ✖ recipes::fixed() masks stringr::fixed()
## ✖ dplyr::lag() masks stats::lag()
## ✖ yardstick::spec() masks readr::spec()
## ✖ recipes::step() masks stats::step()
## • Search for functions across packages at https://www.tidymodels.org/find/
contoh data yang digunakan dapat diakses pada laman berikut :
Placement Prediction Dataset - https://www.kaggle.com/datasets/ruchikakumbhar/placement-prediction-dataset
Mobile Apps Screentime Analysis - https://www.kaggle.com/datasets/anandshaw2001/mobile-apps-screentime-analysis
Electric Vehicle Population - https://www.kaggle.com/datasets/fatmanur12/electric-vehicle-population
Time Series Starter Dataset - https://www.kaggle.com/datasets/podsyp/time-series-starter-dataset
Spatial Data Implementation -
data_placement <- read.csv("placementdata.csv")
data_mobile <- read.csv("screentime_analysis.csv")
data_ev <- read.csv("EV_Population.csv")
data_ts <- read.csv("Month_Value_1.csv")
# Sesuaikan dengan data yang telah dipanggil pada bagian pemanggilan data
# esquisse::esquisser("data_placement")
# esquisse::esquisser("data_mobile")
# esquisse::esquisser("data_ev")
# esquisse::esquisser("data_ts")
# Diagram Batang
ggplot(data_mobile) +
aes(x = App, y = Usage..minutes.) +
geom_bar(stat = "summary", fun = "sum", fill = "#112446") +
theme_minimal()
# Heatmap
ggplot(data_mobile) +
aes(x = Notifications, fill = Date) +
geom_histogram(bins = 30L) +
scale_fill_hue(direction = 1) +
theme_minimal()
#Line Chart
ggplot(data_ts) +
aes(
x = Revenue,
y = Average_cost,
fill = The_average_annual_payroll_of_the_region
) +
geom_line(colour = "#112446") +
scale_fill_viridis_c(option = "inferno", direction = 1) +
theme_minimal()
## Warning: Removed 32 rows containing missing values or values outside the scale range
## (`geom_line()`).
#Area
ggplot(data_ts) +
aes(x = Average_cost, y = Sales_quantity) +
geom_area() +
theme_minimal()
## Warning: Removed 32 rows containing non-finite outside the scale range
## (`stat_align()`).