- Visualisasi data memberikan pemahaman awal mengenai data
- Visualisasi data membantu menyampaikan informasi hasil analisis kepada target pembaca
plot()
untuke membuat diagramggplot2
: membuat plotGGally
: perluasan dari ggplot2ggmap
: membuat petaPlotly
: membuat plot interactive web-basedinstall.pacakges()
ggplot2
adalah alat yang canggih untuk mengkonsutruksi grafis statistika berdasarkan ‘Grammar of Graphics’ggplot2
memudahkan untuk memandang grafik sebagai susunan layer (titik, garis, region) dimana masing-masing ditampilkan dengan berbagai atribut grafis.ggplot2
merupakan bagian dari tidyverse
yang digunakan untuk manipulasi dataIde Utama: Kita bisa menentukan sendiri blok penyusun plot dan menggabungkannya untuk menjadi satu tampilan grafis yang kita inginkan.
Blok penyusun grafik meliputi: - data - aesthetic mapping - geometric object - statistical transformation - scales - coordinate system - position adjustment - faceting
Template grafis secara umum:
ggplot( data = <DATA>) + <geom_function>(mapping = aes(<MAPPINGS>)
aesthetic “aes” dapat diartikan “sesuatu yang terlihat”, seperti:
Geometric “geom” adalah bentuk plot yang akan dibuat untuk merepresentasikan data, seperti:
geom_point
)geom_line
)geom_boxplot
)data mpg
adalah data mengenai kajian penggunaan bahan bakar ekonomis dari berbagai 38 model mobil tahun 1999-2008
library(ggplot2) data(mpg) head(mpg)
## # A tibble: 6 x 11 ## manufacturer model displ year cyl trans drv cty hwy fl class ## <chr> <chr> <dbl> <int> <int> <chr> <chr> <int> <int> <chr> <chr> ## 1 audi a4 1.8 1999 4 auto(l5) f 18 29 p compa~ ## 2 audi a4 1.8 1999 4 manual(m5) f 21 29 p compa~ ## 3 audi a4 2 2008 4 manual(m6) f 20 31 p compa~ ## 4 audi a4 2 2008 4 auto(av) f 21 30 p compa~ ## 5 audi a4 2.8 1999 6 auto(l5) f 16 26 p compa~ ## 6 audi a4 2.8 1999 6 manual(m5) f 18 26 p compa~
bagaimana hubungan antara hwy dan displ?
plot()
perintah dasar membuat scatterplot tersedia di R
plot(mpg$displ,mpg$hwy)
scatterplot dengan menggunakan objek geometri titik (geom_point()
)
#ggplot(mpg) + geom_point(aes(x=displ, y=hwy)) # sintaks yang sama dengan bawah ggplot(data = mpg) + geom_point(mapping = aes(x=displ, y=hwy))
Menambahkan variabel lain menggunakan aesthetic ke dalam scatterplot:
memetakan warna (color) ke variabel “class”, yaitu mengelompokkan data berdasarkan variabel “class” dengan memberi warna yang berbeda
ggplot(mpg)+geom_point(aes(x=displ, y=hwy, color = class))
Memetakan bentuk (shape) ke variabel “class”
ggplot(mpg)+geom_point(aes(x=displ, y=hwy, shape = class))
## Warning: The shape palette can deal with a maximum of 6 discrete values because ## more than 6 becomes difficult to discriminate; you have 7. Consider ## specifying shapes manually if you must have them.
## Warning: Removed 62 rows containing missing values (geom_point).
Memetakan transparansi (alpha) ke variabel “class”
ggplot(mpg)+geom_point(aes(x=displ, y=hwy, alpha = class))
## Warning: Using alpha for a discrete variable is not advised.
Memetakan ukuran (size) ke variabel “class”
ggplot(mpg)+geom_point(aes(x=displ, y=hwy, size = class))
## Warning: Using size for a discrete variable is not advised.
Variabel dapat dipetakan ke beberapa atribut aesthetics
ggplot(mpg)+geom_point(aes(x=displ, y=hwy, color = class, shape = class))
## Warning: The shape palette can deal with a maximum of 6 discrete values because ## more than 6 becomes difficult to discriminate; you have 7. Consider ## specifying shapes manually if you must have them.
## Warning: Removed 62 rows containing missing values (geom_point).
Variabe dipetakan ke aesthetics menggunakan argumen aes()
, sementara fixed aesthetics ditulis diluar aes()
ggplot(mpg)+geom_point(aes(x=displ, y=hwy), color = "red")
ggplot(data=mpg) + geom_point(mapping=aes(x=displ, y=hwy, color="blue"))
Apa yang terjadi ketika variabel kontinume dipetakan ke color
, size
, dan shape
. Bagaimana aesthetic ini berbeda jika dibandingkan antara variabel kontinum dan kategorik?
Apa yang terjadi jika kita memetakan nilai aesthetic ke sesuatu lain selain nama variabel, seperti aes(color=displ<5)
?
Faceting adalah teknik untuk membuat beberapa subplot yang menunjukkan subset yang berbeda dari data. Salah satu teknik faceting adalah facet_grid
yang memungkinkan untuk menspesifikasi sampai dua variable: satu untuk kolom grid dan satu untuk baris grid
ggplot(mpg) + geom_point(aes(x=displ, y=hwy)) + facet_grid(~ class)
ggplot(mpg) + geom_point(aes(x=displ, y=hwy)) + facet_grid(year ~ class)
Merepresentasikan titik-titik data dengan garis yang diperhalus dengan geom_smooth()
ggplot(mpg) + geom_smooth(aes(x=displ, y=hwy))
## `geom_smooth()` using method = 'loess' and formula 'y ~ x'
Menghapus area abu-abu atau selang kepercayaan geom_smooth()
ggplot(mpg) + geom_smooth(aes(x=displ, y=hwy), se = FALSE)
## `geom_smooth()` using method = 'loess' and formula 'y ~ x'
Menambahkan layer titik data pada grafik sebelumnya
ggplot(mpg) + geom_smooth(aes(x=displ, y=hwy), se = FALSE) + geom_point(aes(x=displ, y=hwy))
## `geom_smooth()` using method = 'loess' and formula 'y ~ x'
Memetakan variabel drv pada linetype
ggplot(data = mpg) + geom_smooth(aes(x = displ, y = hwy, linetype=drv), se = FALSE)
## `geom_smooth()` using method = 'loess' and formula 'y ~ x'
Memetakan variabel drv pada linetype
ggplot(data = mpg) + geom_smooth(aes(x = displ, y = hwy, linetype=drv), se = FALSE) + geom_point(aes(x = displ, y = hwy, color=drv), se = FALSE)
## Warning: Ignoring unknown parameters: se
## `geom_smooth()` using method = 'loess' and formula 'y ~ x'