Animasi Grafik dengan gganimate
Oct 27, 2021·
·
2 min read

Deden Istiawan

Pada artikel ini akan dijelaskan step by step membuat animasi di R menggunakan packages gganimate. gganimate adalah ekstensi dari packages gglplot2 untuk membuat animasi. Untuk membuat animasi grafik dibutuhkan beberapa packages diantaranaya gapminder ggplot2 gganimate. Read more.
Load Package
library(gapminder)
library(ggplot2)
library(gganimate)
Tapap selanjutnya adalah import data dari gapminder di dalam dataset ini terdapat 1704 observasi dan 6 variabel. Variabel dalam dataset ini adalah:
- Country adalah Nama Negara
- Continent adalah Nama Benua
- Year adalah Tahun dari setiap data
- LifeExp adalah Angka harapan Hidup
- Pop adalah Populasi setiap negara per tahun
- gdpPercap adalah GDP per kapita setiap negara per tahun
Import Data
library(gapminder)
data=gapminder
data
Membuat Plot Dasar Statis
sebelum membuat animasi, langkah awal adalah membuat plot dasar yang static dengan gglplot2 dan simpan gambar dengan nama gapminder_plot
library(gapminder)
library(ggplot2)
gapminder_plot <- ggplot(
gapminder,
aes(x = gdpPercap, y=lifeExp, size = pop, colour = continent, size = pop, frame = year)
) +
geom_point(alpha = 0.6) +
scale_color_viridis_d() +
scale_x_log10() +
labs(x = "GDP per capita", y = "Life expectancy")
gapminder_plot
Menambahkan Transisi
library(gganimate)
gapminder_plot + transition_time(year) +
labs(title = "Year: {frame_time}")
Membuat Plot Tiap Benua
library(gganimate)
gapminder_plot + facet_wrap(~continent) +
transition_time(year) +
labs(title = "Year: {frame_time}")
Membuat Plot Dinamis
library(gganimate)
gapminder_plot + transition_time(year) +
labs(title = "Year: {frame_time}") +
view_follow(fixed_y = TRUE)
Membuat Bayanga Animasi
library(gganimate)
gapminder_plot + transition_time(year) +
labs(title = "Year: {frame_time}") +
shadow_wake(wake_length = 0.1, alpha = FALSE)
Menampilkan Jejak Data
library(gganimate)
gapminder_plot + transition_time(year) +
labs(title = "Year: {frame_time}") +
shadow_mark(alpha = 0.3, size = 0.5)