Visualisasi Data dengan ggplot2
A. Pendahuluan
A.1 Package
install.packages(c("tidyverse", "ggridges", "GGally", "plotly"), dependencies = TRUE)
library(tidyverse)
library(ggridges)
library(GGally)
library(plotly) # Untuk membuat plot interaktif
library(grid) # Akan diperlukan untuk fungsi `arrange`
A.2 Data
Data yang digunakan pada praktikum kali ini adalah data House Price Prediction yang memiliki 36 kolom.
Berikut adalah informasi singkat mengenai data
The real estate markets, like those in Sydney and Melbourne, present an interesting opportunity for data analysts to analyze and predict where property prices are moving towards. Prediction of property prices is becoming increasingly important and beneficial. Property prices are a good indicator of both the overall market condition and the economic health of a country. Considering the data provided, we are wrangling a large set of property sales records stored in an unknown format and with unknown data quality issues
Data bisa diakses melalui link berikut : data_house
Anda bisa mengunduhnya dan disimpan di Komputer/Laptop Anda, atau Anda bisa mengaksesnya secara langsung.
<-read.csv("https://raw.githubusercontent.com/gerrydito/Sains-Data-S2/master/Praktikum/Visualisasi%20Data/house_price.csv", header = TRUE, sep=",") data_house
Opsi :
- header = TRUE
digunakan untuk menjadikan header / baris pertama sebagai nama variabel
- sep=","
digunakan untuk memisahkan data dengan separator koma (,)
, perlu diperhatikan, ada beberapa format .csv
yang menggunakan titik koma (;)
, sebagai separator.
A.3 Tambahan
Untuk mempermudah visualisasi beberapa bagian dalam Praktikum ini, digunakan fungsi arrange
yang dibuat oleh Stephen Turner
<- function(x, y) viewport(layout.pos.row=x, layout.pos.col=y)
vp.layout <- function(..., nrow=NULL, ncol=NULL, as.table=FALSE) {
arrange <- list(...)
dots <- length(dots)
n if(is.null(nrow) & is.null(ncol)) { nrow = floor(n/2) ; ncol = ceiling(n/nrow)}
if(is.null(nrow)) { nrow = ceiling(n/ncol)}
if(is.null(ncol)) { ncol = ceiling(n/nrow)}
## NOTE see n2mfrow in grDevices for possible alternative
grid.newpage()
pushViewport(viewport(layout=grid.layout(nrow,ncol) ) )
<- 1
ii.p for(ii.row in seq(1, nrow)){
<- ii.row
ii.table.row if(as.table) {ii.table.row <- nrow - ii.table.row + 1}
for(ii.col in seq(1, ncol)){
<- ii.p
ii.table if(ii.p > n) break
print(dots[[ii.table]], vp=vp.layout(ii.table.row, ii.col))
<- ii.p + 1
ii.p
}
} }
B. ggplot2
overview
Secara umum pembuatan grafik pada package ggplot2 dapat dilakukan dengan menggunakan dua cara yaitu
qplot(x,y,geom="xxx")
atau
ggplot()+geom_xxx(aes(x,y))
.
B.1 Scatter Plot
set.seed(581)
<-rnorm(10, mean=5, sd=1)
vectorx<-rnorm(10, mean=5, sd=1)
vectory<-qplot(x=vectorx,
a1y=vectory,
geom = "point")
<-ggplot()+
a2geom_point(aes(x=vectorx,
y=vectory))
arrange(a1,a2)
B.2 Memberi Plot Title
<-qplot(x=vectorx,
b1y=vectory,
geom = "point",
main="qplot")
<-ggplot()+
b2geom_point(aes(x=vectorx,
y=vectory))+
labs(title="ggplot2")
arrange(b1,b2)
B.3 Mengubah axis label
<-qplot(x=vectorx,
c1y=vectory,
geom = "point",
main="qplot",
xlab = "Label Axis X",
ylab="Label Axis Y")
<-ggplot()+
c2geom_point(aes(x=vectorx,
y=vectory))+
labs(title="ggplot2")+
xlab("Label Axis X")+
ylab("Label Axis Y")
arrange(c1,c2)
B.4 Mengubah axis limits
<-qplot(x=vectorx,
d1y=vectory,
geom = "point",
main="qplot",
xlab = "Label Axis X",
ylab="Label Axis Y",
xlim=c(-5,20),
ylim=c(-10,30))
<-ggplot()+
d2geom_point(aes(x=vectorx,
y=vectory))+
labs(title="ggplot2")+
xlab("Label Axis X")+
ylab("Label Axis Y")+
xlim(-5,20)+
ylim(-10,30)
arrange(d1,d2)
B.5 Memberi Warna Titik
Perlu berhati-hati dalam menaruh colour=""
, dalam ggplot2
, karena bisa terjadi seperti berikut ini :
<-qplot(x=vectorx,
e1y=vectory,
geom = "point",
colour="blue",
main="qplot",
xlab = "Label Axis X",
ylab="Label Axis Y")
<-ggplot()+
e2geom_point(aes(x=vectorx,
y=vectory,
colour="blue"))+
labs(title="ggplot2")+
xlab("Label Axis X")+
ylab("Label Axis Y")
arrange(e1,e2)
colour="blue"
, dibaca sebagai pewarna kategori, sedangkan warnanya diambil warna default kategori, jika ingin mewarnai titik, maka
<-qplot(x=vectorx,
e3y=vectory,
geom = "point",
colour="isiapapunlah",
main="qplot",
xlab = "Label Axis X",
ylab="Label Axis Y")+
scale_colour_manual(values = c("blue"))+
theme(legend.position="none")
<-ggplot()+
e4geom_point(aes(x=vectorx,
y=vectory),
colour="blue")+
labs(title="ggplot2")+
xlab("Label Axis X")+
ylab("Label Axis Y")
arrange(e3,e4)
Anda bisa juga memberi warna dengan metode lain, namun Anda perlu membuat vectorx
dan vectory
dalam suatu data frame
<-cbind.data.frame(vectorx, vectory) data_sim
<-qplot(x=vectorx,
e5y=vectory,
geom = "point",
data=data_sim,
colour=factor(vectorx),
main="qplot",
xlab = "Label Axis X",
ylab="Label Axis Y")
<-ggplot()+
e6geom_point(aes(x=vectorx,
y=vectory,
colour=factor(vectorx)),
data=data_sim)+
labs(title="ggplot2")+
xlab("Label Axis X")+
ylab("Label Axis Y")
arrange(e5,e6)
Jika Variasi Warna Anda rasa terlalu banyak, Anda bisa memanfaatkan fungsi round
.
<-qplot(x=vectorx,
e7y=vectory,
geom = "point",
data=data_sim,
colour=factor(round(vectorx)),
main="qplot",
xlab = "Label Axis X",
ylab="Label Axis Y")
<-ggplot()+
e8geom_point(aes(x=vectorx,
y=vectory,
colour=factor(round(vectorx))),
data=data_sim)+
labs(title="ggplot2")+
xlab("Label Axis X")+
ylab("Label Axis Y")
arrange(e7,e8)
B.6 Mengubah Bentuk Titik
<-qplot(x=vectorx,
f1y=vectory,
geom = "point",
data=data_sim,
colour=factor(round(vectorx)),
shape =factor(vectorx),
main="qplot",
xlab = "Label Axis X",
ylab="Label Axis Y")
<-ggplot()+
f2geom_point(aes(x=vectorx,
y=vectory,
colour=factor(round(vectorx)),
shape =factor(vectorx)),
data=data_sim)+
labs(title="ggplot2")+
xlab("Label Axis X")+
ylab("Label Axis Y")
arrange(f1,f2)
## Warning: The shape palette can deal with a maximum of 6 discrete values because
## more than 6 becomes difficult to discriminate; you have 10. Consider
## specifying shapes manually if you must have them.
## Warning: Removed 4 rows containing missing values (geom_point).
## Warning: The shape palette can deal with a maximum of 6 discrete values because
## more than 6 becomes difficult to discriminate; you have 10. Consider
## specifying shapes manually if you must have them.
## Warning: Removed 4 rows containing missing values (geom_point).
Dapat dilihat, bahwa ggplot2
mempunyai batasan mengenai banyaknya bentuk titik yang ditampilkan.
<-qplot(x=vectorx,
f3y=vectory,
geom = "point",
data=data_sim,
colour=factor(round(vectorx)),
shape =factor(round(vectorx)),
main="qplot",
xlab = "Label Axis X",
ylab="Label Axis Y")
<-ggplot()+
f4geom_point(aes(x=vectorx,
y=vectory,
colour=factor(round(vectorx)),
shape =factor(round(vectorx))),
data=data_sim)+
labs(title="ggplot2")+
xlab("Label Axis X")+
ylab("Label Axis Y")
arrange(f3,f4)
B.7 Mengubah Ukuran Titik
<-qplot(x=vectorx,
g1y=vectory,
geom = "point",
data=data_sim,
size =vectorx,
main="qplot",
xlab = "Label Axis X",
ylab="Label Axis Y")
<-ggplot()+
g2geom_point(aes(x=vectorx,
y=vectory,
size = vectorx),
data=data_sim)+
labs(title="ggplot2")+
xlab("Label Axis X")+
ylab("Label Axis Y")
arrange(g1,g2)
B.8 Menggabungkan lebih dari Satu Geom
ggplot2
memiliki banyak geom yang bisa digunakan sesuai dengan keperluan, diantaranya adalah
Geom | Description | DefaultStat |
---|---|---|
geom_bar() | Bar chart | stat_bin() |
geom_point() | Scatterplot | stat_identity() |
geom_line() | Line diagram, connecting observations in order by x-value | stat_identity() |
geom_boxplot | Box-and-whisker plot | stat_boxplot() |
geom_path | Line diagram, connecting observations in original order | stat_identity() |
geom_smooth | Add a smoothed conditioned mean | stat_smooth() |
geom_histogram | An alias for geom_bar() and stat_bin() | stat_bin() |
geom_poin
dan geom_line
Berikut ini, akan digabungkan geom_poin
dan geom_line
<-qplot(x=vectorx,
h1y=vectory,
geom = c("point", "line"),
data=data_sim,
main="qplot",
xlab = "Label Axis X",
ylab="Label Axis Y")
<-ggplot(aes(x=vectorx,
h2y=vectory),
data=data_sim)+
geom_point()+
geom_line()+
labs(title="ggplot2")+
xlab("Label Axis X")+
ylab("Label Axis Y")
arrange(h1,h2)
geom_point
dan geom_smooth
<-qplot(x=vectorx,
h3y=vectory,
geom = c("point", "smooth"),
data=data_sim,
main="qplot",
xlab = "Label Axis X",
ylab="Label Axis Y")
<-ggplot(aes(x=vectorx,
h4y=vectory),
data=data_sim)+
geom_point()+
geom_smooth()+
labs(title="ggplot2")+
xlab("Label Axis X")+
ylab("Label Axis Y")
arrange(h3,h4)
## `geom_smooth()` using method = 'loess' and formula 'y ~ x'
## `geom_smooth()` using method = 'loess' and formula 'y ~ x'
geom_smooth
sebenarnya memerlukan minimal dua opsi lain, yaitu:
- method
- formula
Berikut adalah contoh graphic dengan opsi yang lain
<-ggplot(aes(x=vectorx,
h5y=vectory),
data=data_sim)+
geom_point()+
geom_smooth(method="loess", formula=y~x)+
labs(title="loess : y~x")+
xlab("Label Axis X")+
ylab("Label Axis Y")
<-ggplot(aes(x=vectorx,
h6y=vectory),
data=data_sim)+
geom_point()+
geom_smooth(method="loess", formula=y~log(x))+
labs(title="loess : y~log(x)")+
xlab("Label Axis X")+
ylab("Label Axis Y")
<-ggplot(aes(x=vectorx,
h7y=vectory),
data=data_sim)+
geom_point()+
geom_smooth(method="lm", formula=y~x)+
labs(title="lm : y~x")+
xlab("Label Axis X")+
ylab("Label Axis Y")
<-ggplot(aes(x=vectorx,
h8y=vectory),
data=data_sim)+
geom_point()+
geom_smooth(method="lm", formula=y~log(x))+
labs(title="lm : y~log(x)")+
xlab("Label Axis X")+
ylab("Label Axis Y")
arrange(h5,h6, h7, h8)
B.9 Menggunakan Theme
<-ggplot(aes(x=vectorx,
i1y=vectory),
data=data_sim)+
geom_point()+
geom_smooth(method="lm", formula=y~log(x))+
labs(title="theme_bw()")+
xlab("Label Axis X")+
ylab("Label Axis Y")+
theme_bw()
<-ggplot(aes(x=vectorx,
i2y=vectory),
data=data_sim)+
geom_point()+
geom_smooth(method="lm", formula=y~log(x))+
labs(title="theme_dark()")+
xlab("Label Axis X")+
ylab("Label Axis Y")+
theme_dark()
<-ggplot(aes(x=vectorx,
i3y=vectory),
data=data_sim)+
geom_point()+
geom_smooth(method="lm", formula=y~log(x))+
labs(title="theme_classic()")+
xlab("Label Axis X")+
ylab("Label Axis Y")+
theme_classic()
<-ggplot(aes(x=vectorx,
i4y=vectory),
data=data_sim)+
geom_point()+
geom_smooth(method="lm", formula=y~log(x))+
labs(title="theme_minimal()")+
xlab("Label Axis X")+
ylab("Label Axis Y")+
theme_minimal()
<-ggplot(aes(x=vectorx,
i5y=vectory),
data=data_sim)+
geom_point()+
geom_smooth(method="lm", formula=y~log(x))+
labs(title="theme_light()")+
xlab("Label Axis X")+
ylab("Label Axis Y")+
theme_light()
<-ggplot(aes(x=vectorx,
i6y=vectory),
data=data_sim)+
geom_point()+
geom_smooth(method="lm", formula=y~log(x))+
labs(title="theme_linedraw()")+
xlab("Label Axis X")+
ylab("Label Axis Y")+
theme_linedraw()
arrange(i1,i2, i3, i4, i5, i6)
Jika, Anda ingin mempelajari lebih lanjut mengenai Visualisasi Grafik, bisa dipelajari di link-link berikut :
- R Graphics Cookbook
- ggplot2: Elegant Graphics for Data Analysis
- Data Visualization with ggplot2 Cheat Sheet
-The R Graph Gallery
C. Visualisasi Distribusi
Pada Subbagaian Data, sudah kta import data dari github dengan nama data_house
.
head(data_house)
## date price bedrooms bathrooms sqft_living sqft_lot floors
## 1 2014-05-02 00:00:00 313000 3 1.50 1340 7912 1.5
## 2 2014-05-02 00:00:00 2384000 5 2.50 3650 9050 2.0
## 3 2014-05-02 00:00:00 342000 3 2.00 1930 11947 1.0
## 4 2014-05-02 00:00:00 420000 3 2.25 2000 8030 1.0
## 5 2014-05-02 00:00:00 550000 4 2.50 1940 10500 1.0
## 6 2014-05-02 00:00:00 490000 2 1.00 880 6380 1.0
## waterfront view condition sqft_above sqft_basement yr_built yr_renovated
## 1 0 0 3 1340 0 1955 2005
## 2 0 4 5 3370 280 1921 0
## 3 0 0 4 1930 0 1966 0
## 4 0 0 4 1000 1000 1963 0
## 5 0 0 4 1140 800 1976 1992
## 6 0 0 3 880 0 1938 1994
## street city statezip country
## 1 18810 Densmore Ave N Shoreline WA 98133 USA
## 2 709 W Blaine St Seattle WA 98119 USA
## 3 26206-26214 143rd Ave SE Kent WA 98042 USA
## 4 857 170th Pl NE Bellevue WA 98008 USA
## 5 9105 170th Ave NE Redmond WA 98052 USA
## 6 522 NE 88th St Seattle WA 98115 USA
C.1 Histogram
Selanjutnya, misalkan saja kita ingin melihat bagaimana distribusi atau sebaran dari harga rumah yang disini ada di kolom price. Grafik yang sering digunakan adalah histogram.
ggplot(data_house) +
geom_histogram(aes(x = price),fill="darkred",col="darkred",binwidth = 5000) +
ggtitle("Histogram Harga Rumah") +
ylab("Jumlah Rumah") +
xlab("Harga Rumah") +
theme(plot.title = element_text(hjust = 0.5))
Argumen fill
digunakan untuk memberi warna pada histogram, sedangkan argumen binwidth
digunakan untuk mengatur ukuran bin/kotak pada boxplot. Fungsi ggtitle
digunakan untuk memberi judul pada grafik, sedangkan fungsi ylab
dan xlab
untuk memberikan nama pada sumbu y dan sumbu x. Terakhir fungsi argumen `plot.title`` digunakan untuk mengatur bagaimana tampilan dari tulisan judul pada plot, seperti posisi, ukuran font dan jenis font.
Berdasarkan histogram tersebut bisa diperoleh informasi bahwa terdapat harga rumah yang sangat mahal dibandingkan dengan harga rumah mayoritas.
C.2 Boxplot
Jika Lita ingin melihat bagaimana perbandingan distribusi pada beberapa peubah, maka boxplot adalah salah plot yang paling umum digunakan. Pada ilustrasi ini kita akan membandingkan distribusi harga rumah dari 10 kota. Oleh karena itu, langkah pertama yang kita lakukan adalah menyaring ke-10 kota tersebut menggunakan fungsi filter
.
%>%
data_housefilter(city %in% c("Shoreline","Seattle"
"Auburn","Duvall","Burien",
,"Tukwila","Vashon","Yarrow Point",
"SeaTac","Medina")
%>%
)ggplot() +
geom_boxplot(aes(x = city,y = price,fill=city),show.legend = F) +
ggtitle("Sebaran Harga Rumah Setiap Kota") +
ylab("Harga Rumah") +
xlab("Kota") +
theme(plot.title = element_text(hjust = 0.5))+
theme_bw()
Hal yang perlu diperhatikan untuk membuat boxplot beberapa peubah atau kelompok adalah nama-nama peubah atau kelompok itu harus ada dalam satu kolom yang bertipe character atau factor. Kemudian argumen x
di dalam fungsi aes
disi adengan nama kolom yang isinya nama-nama peubah atau kelompok tersebut. Jika ingin memberikan warna yang beda-beda pada boxplot maka argumen fill
harus diletakan dalam fungsi aes
dan diisi dengan nama kolom yang isinya nama-nama peubah atau kelompok tersebut. Namun, Rumah dengan harga yang paling tinggi diantara 10 kota tersebut berada di kota Seattle.
Berdasarkan boxplot tersebut bahwa harga rumah di kota Medina secara umum lebih tinggi dibandingkan dengan sembilan kota lainnya.
C.3 Ridge Line
Plot alternative lain untuk membandingkan distribusi data adalah plot Ridgeline, yang mirip seperti histogram. Plot ridgeline bisa dijalankan dalam R dengan menggunakan fungsi geom_density_ridges
dari package ggridges
. Isi argumenya mirip seperti pada saat pembuatan plot boxplot.
%>%
data_housefilter(city %in% c("Shoreline","Seattle"
"Auburn","Duvall","Burien",
,"Tukwila","Vashon","Yarrow Point",
"SeaTac","Medina")
%>%
)ggplot() +
geom_density_ridges(aes(y = city,x = price,fill=city), show.legend = F) +
ggtitle("Sebaran Harga Rumah Setiap Kota") +
ylab("Kota") +
xlab("Harga Rumah") +
theme(plot.title = element_text(hjust = 0.5))+
theme_bw()
## Picking joint bandwidth of 133000
Berdasarkan plot ridgeline ini semakin jelas bahwa Kota Medina memiliki harga rumah yang secara umum lebih mahal dibandingkan kota-kota lainnya. Namun informasi harga rumah termahal yang ada di kota Seatle tidak tertangkap disini.
D. Visualisasi Jumlah
D.1 Bar Plot
Plot yang paling sering digunakan memandingkan jumlah dari beberapa kategori adalah bar plot atau bar chart atau diagram batang. Dalam package ggplot2
bar plot ini bisa ditampilkan menggunakan geom_bar
atau geom_col
. Perbedaan mendasar dari kedua fungsi itu adalah data yang perlu disediakan. Fungsi geom_bar
hanya membutuhkan satu kolom saja (dengan tipe data character atau factor), sedangkan geom_col
membutuhkan dua kolom data yaitu nama kategori dan jumlah setiap kategori.
%>%count(city)%>%
data_houseggplot()+
geom_col(aes(x=fct_reorder(as.factor(city),n),y=n), fill="steelblue",
width=0.4) +
scale_y_continuous(expand = c(0,0))+
coord_flip() +
ggtitle("Jumlah Rumah Setiap Kota") +
xlab("") +
ylab("Jumlah Rumah") +
theme(plot.title = element_text(hjust = 0.5))+
theme_classic()
fungsi fct_reorder
digunakan untuk mengurutkan kategori berdasarkan nilai tertentu. Kemudian, sintaks scale_y_continuous(expand = c(0,0))
digunakan agar barplot dimulai dari nol. Fungsi coord_flip
digunakan untu menukar sumbu x dan sumbu y.
D.2 Lolipop Chart
Plot alternative dari bar chart adalah lolipop chart. Seperti namanya plot ini terinspirasi dari permen lolipop. Untuk membuat plot ini dibutuhkan dua fungsi yaitu geom_segment
dan juga geom_point
.
Fungsi geom_segment
digunakan untuk menggambarkan garis sedangkan fungsi geom_point
digunakan untuk menggambarkan titik.
%>%count(city)%>%
data_housemutate(city=fct_reorder(as.factor(city),desc(n)))%>%
ggplot()+
geom_segment(aes(x=city,xend=city, y=0, yend=n), color="skyblue")+
geom_point(aes(x=city,y=n),color="steelblue", size=2)+
scale_y_continuous(expand = c(0,0))+
coord_flip() +
ggtitle("Jumlah Rumah Setiap Kota") +
xlab("") +
ylab("Jumlah Rumah") +
theme(plot.title = element_text(hjust = 0.5))
E. Visualisasi Korelasi
E.1 Diagram Pencar
Korelasi atau hubungan dari dua peubah bisa kita visualisasikan menggunakan scatterplot. Jika scatterplot membentuk pola garis maka bisa dikatakan bahwa kedua peubah tersebut memiliki korelasi yang kuat.
ggplot(data_house) +
geom_point(aes(x = sqft_living,y = price),color="steelblue",size=2) +
ggtitle("Scatter Plot Harga Rumah vs Luas Rumah") +
ylab("Luas Rumah") +
xlab("Harga Rumah") +
theme(plot.title = element_text(hjust = 0.5))
E.2 Correlogram
Penggunaan scatterplot memiliki keterbatasan jika korelasi peubah yang ingin dilihat ada banyak. Coreelogram bisa digunakan untuk mengatasi hal tersebut. Correlogram ini membuat grafik berdasarkan nilai koefisien korelasi yang dikonversikan dalam bentuk warna.
::ggcorr(data_house, method = c("everything","pearson"),geom = "tile") GGally
## Warning in GGally::ggcorr(data_house, method = c("everything", "pearson"), :
## data in column(s) 'date', 'street', 'city', 'statezip', 'country' are not
## numeric and were ignored
E.2 Plot Interaktif
Bagian terakhir ini kita akan membuat plot interaktif dari grafik ggplot yang sudah dibuat. Untuk membuat plot interaktif dari ggplot2 kita bisa menggunakan fungsi ggplotly
yang berasal dari package plotly
.
<- ggplot(data_house) +
p1 geom_point(aes(x = sqft_living,y = price),color="steelblue",size=2) +
ggtitle("Scatter Plot Harga Rumah vs Luas Rumah") +
ylab("Luas Rumah") +
xlab("Harga Rumah") +
theme(plot.title = element_text(hjust = 0.5))
ggplotly(p1)
Tugas
Ketentuan
Anda akan terbagi menjadi Kelompok Kecil (Kode 1,2,3, …) dan Kelompok Besar (A, B, C, …).
Setiap Kelompok Kecil terdiri dari 2 orang.
Setiap Kelompok Besar terdiri dari 2 Kelompok Kecil.
Untuk Kelompok Kecil, silahkan Anda tentukan bersama-sama rekan Anda, laporkan ke Saya via PJ Kelas, paling lambat 1 x 24 jam dari jam Praktikum selesai.
Kelompok Besar, akan saya tentukan dan disampaikan pada 9 Maret 2021 pukul 00.01 via NewLMS.
Materi Tugas
Tugas Pertama untuk masing-masing Kelompok Kecil
Buat suatu Visualisasi Data, (data dari datasets di R, dengan catatan bahwa Visualisasi Data tersebut MELANGGAR 6 Prinsip dari Desain (ACCENT).
Buat dalam rmarkdown, yang berisi syntax graphic, dan
Catatan Pelanggaran
.Upload dalam NewLMS berupa
html
paling lambat 8 Maret 2021 pukul 23.59 WIB, jangan lupa ditaruh di Rpubs masing-masing.
Tugas Kedua untuk dikerjakan masing-masing Kelompok Kecil
Perbaiki Visualisasi Data dari Rekan Anda di Kelompok Kecil lain dari Kelompok Besar Anda.
Berikan
Catatan Perbaikan
untuk masing-masing prinsip.
Tugas Ketiga untuk dikerjakan dalam Kelompok Besar
Diskusikan Perbaikan yang telah dilakukan dalam kelompok besar Anda dengan cara membandingkan antara
Catatan Pelanggaran
danCatatan Perbaikan
. Sehingga ada 3 Catatan untuk masing-masing Prinsip Desain ACCENT, yaituCatatan Pelanggaran
,Catatan Perbaikan
danPerbandingan
Upload dalam NewLMS berupa
html
paling lambat 12 Maret 2021 pukul 07.00 WIB, pilih opsirepublish
di Rpubs masing-masing.Dalam Tugas 2 dan 3 ini, silahkan Anda melanjutkan dari Rmarkdown yang Anda buat sebelumnya. pada
YAML
bagianauthor
, Anda gunakan seperti berikut ini
:
author- Nama 1 ^[Afiliasi, Alamat - email]
- Nama 2 ^[Afiliasi, Alamat - email]
- Nama 3 ^[Afiliasi, Alamat - email]
- Nama 4 ^[Afiliasi, Alamat - email]
Catatan Tambahan
Jika Anda menggunakan referensi dari suatu sumber, harap dimasukkan sebagai referensi dalam Dokumen
rmarkdown
Anda.Jika dalam Kelompok Anda tidak sepakat dalam suatu bahasan, Anda bisa mencatat ketidak-sepakatan itu dalam tugas yang Anda Laporkan.
Untuk Tugas Pertama : Konten dari html yg diupload dari 2 orang di kelompok kecil yang sama adalah sama.
Untuk Tugas Kedua dan Ketika : Konten dari html yang diupload dari 2 orang di kelompok kecil dan besar yang sama adalah sama.
References
anonym . tanpa tahun .qplot: Quick plot with ggplot2 - R software and data visualization [2 Maret 2021]. http://www.sthda.com/english/wiki/qplot-quick-plot-with-ggplot2-r-software-and-data-visualization
Chang W. 2013. R Graphic Cookbook. California : O’Really Media. http://www.cookbook-r.com/
de Vries A, Meys J. tanpa tahun. How to Get Geoms in ggplot in R [4 Maret 2021]. https://www.dummies.com/programming/r/how-to-get-geoms-in-ggplot-in-r/
Dito GA, Anisa R. 2020. Visualisasi Data dengan ggplot2. [1 Maret 2021].https://rpubs.com/gdito/viz-ggplot2
Lilis D. tanpa tahun .R Graphics: Plotting in Color with qplot Part 2 [4 Maret 2021]. https://www.theanalysisfactor.com/r-programming-plotting-color-part-2-qplot/
RStudio . tanpa tahun . Data Visualization with ggplot2 Cheat Sheet [4 Maret 2021]. https://rstudio.com/wp-content/uploads/2015/03/ggplot2-cheatsheet.pdf
Turner S. 2010. Arrange multiple ggplot2 plots in the same image window [3 Maret 2021]. https://gettinggeneticsdone.blogspot.com/2010/03/arrange-multiple-ggplot2-plots-in-same.html
Wickham H, Danielle N, Pedersen TL. 2016. ggplot2: Elegant Graphics for Data Analysis. Texas: Springer. https://ggplot2-book.org/
Badan Informasi Geospasial, abdul.aziz@big.go.id↩︎