graphics dalam R
Graphics dalam R •
Graphs dibangun di R dengan dua prinsip 1) Membangun Grafik Dasar 2) Menambah infomasi pada grafik Dasar
fungsi Graphics • fungsi dengan level tinggi – Membuat grafik dari data
• Fungsi dengan level rendah – Modifikasi grafik yang telah dibuat
• Parameter grafik – Mengkontrol tampilan grafik
Fungsi Grafik Tingkat Tinggi • • • •
plot() hist() barplot() boxplot()
Fungsi Grafik tingkat Rendah • points() • lines() • abline() • text() • mtext() • title() • legend() etc
Graphical parameters • Parameter diset dengan perintah par() • Mengkontrol bagaimana tampilan grafik
Graphical Type
• • • •
Histogram Box Plot Bar Plot Line Plot
histogram • Data x1=c(1,2,3,4,4,6,7,10,9)
• Plot histogram: hist(x1)
histogram • Plot as probability hist(x1,prob=T)
histogram • Plot as probability hist(x1,prob=T)
• Add density curve
lines(density(x1),col=“red”)
histogram • Plot as probability hist(x1,prob=T)
• Add density curve lines(density(x1),col= “red”)
• Add “rug plot” to locate data rug(x1,col="blue")
boxplot • boxplot function boxplot(x1)
boxplot • boxplot function boxplot(x1)
• Add title title(main="Boxplot of x1")
boxplot • boxplot function boxplot(x1)
• Add title title(main="Boxplot of x1")
• Plot horizontally boxplot(x1,main="Boxplot of x1",horizontal=T)
Boxplot >1 • Data x1=c(1,2,3,4,4,6,7,10,9) x2=c(2,2,2,3,4,2,3,4,1) x3=c(2,3,7,4,8,6,9,11,2)
boxplot boxplot(x1,x2,x3) title(main=“three boxplots”)
boxplot boxplot(x1,x2,x3) title(main=“three boxplots”)
OR bp3<-data.frame(x1,x2,x3) boxplot(bp3)
boxplot boxplot(x1,x2,x3) title(main=“three boxplots”)
OR bp3<-data.frame(x1,x2,x3) boxplot(bp3)
barplot barplot(x1)
barplot barplot(x1,col=rainbow(20))
barplot barplot(x1) barplot(x1,col=rainbow(20)) barplot(x1,col=rainbow(20), horizontal=T)
Barplots data dalam group Usia 50-54 55-59 60-64 65-69 70-74
A 11.7 18.1 26.9 41.0 66.0
B 8.7 11.7 20.3 30.9 54.3
C 15.4 24.3 37.0 54.6 71.1
D 8.4 13.6 19.3 35.1 50.0
Barplot A=c(11.7,18.1,26.9,41,66) B=c(8.7,11.7,20.3,30.9,54.3) C=c(15.4,24.3,37,54.6,71.1) D=c(8.4,13.6,19.3,35.1,50) mydata=data.frame(A,B,C,D) rownames(mydata)=c("50-54","55-59","60-64","65-69","70-74")
mydata2=as.matrix(mydata)
Barplots for grouped data barplot(mydata2)
Barplots for grouped data barplot(mydata2) barplot(mydata2, col=rainbow(5),legend=T)
Barplots for grouped data barplot(mydata2) barplot(mydata2, col=rainbow(5),legend=T) barplot(mydata, col=rainbow(5), legend=T,beside=T)
scatterplot x1=c(1,2,3,4,4,6,7,10,9)
plot(x1)
scatterplot • plot(x1,type="l")
scatterplot par(mfrow=c(3,2)) plot(x1,type="p",main="type points") plot(x1,type="l",main="type lines") plot(x1,type="b",main="type both") plot(x1,type="o",main="type overplot") plot(x1,type="h",main="type histogram") plot(x1,type="s",main="type steps")
p: l: b: o: h: s:
Plotting symbols, par(pch) • Default : 25 plotting characters dikontrol oleh pch parameter Exp :pch = n • Parameter pch dapat berupa character, ex pch = “x” dan dapat juga berupa vector
Plotting symbols, par(pch) x<-rep(1:5,times=5) y<-rep(1:5,each=5) par(xpd=T) plot(x,y,type="p",pch=1:25 ,cex=3,axes=F,ann=F,bty= "n",bg="red") title(main="Data symbols 1:25") text(x,y,labels=1:25,pos=1 ,offset=1)
x and y are both vectors of length 25 xpd controls “clipping” of graphics, allows data to be plotted outside the main plot area. pch is a vector 1:25, so each point has a unique symbol cex controls the symbol size bg is background colour axes = F and ann = F stops the drawing of axes and labels text adds labels to the points, x and y give locations, labels contains the text, pos=1 puts the text below the points
Plotting symbols, par(pch) tb=c(160, 165, 175, 180, 185) bb=c(55,60,70,75,80)
Plotting symbols: size and width • symbol size controlled by cex – cex=n plots a figure n times the default size
• Line width controlled by lwd – lwd=n gives the width of the line
Plotting symbols: size and width x<-rep(1:5,times=5) y<-rep(1:5,each=5) plot(x,y,type="p",pch=3,lwd= x,cex=y,xlim=c(0,5),ylim=c (0,5),bty="n", ann=F) title(main="R plotting symbols: size and width", xlab="Width (lwd)", ylab="Size (cex)")
x and y generated as in previous example Also act as vectors of width: lwd=x and size: cex=y pch=3 only uses a single symbol
Plotting symbols: colour • Colour of objects controlled by “col” • col can be argument to high or low level functions: outcome determined by context • Colours specified a number of ways: – by name: see colours() for all names colours – by integer: referring to locations in the current palette: see palette() – as a location in rgb or other colour space as
Plotting symbols: colour • default palette: > palette() [1] "black"
"red"
"magenta" "yellow"
"green3"
"blue"
"cyan"
"gray"
• integer values for colours refer to locations in the palette, recycled as necessary
Plotting symbols: colour function () {x<-rep(1:5,times=5) y<-rep(1:5,each=5) plot(x,y,type="p",pch=3,l wd=x,cex=y, col=1:25, xlim=c(0,5),ylim=c(0,5) ,bty="n", ann=F)
Identical to previous example, but with a colour argument added to the plot function col here is a vector 1:25, only 8 colours in the default palette, so they will be recycled
title(main="R plotting symbols: size and width", xlab="Width (lwd)", ylab="Size (cex)") } R users group
An introduction to graphics in R
Plotting symbols: colour x<-rep(1:5,times=5) y<-rep(1:5,each=5) plot(x,y,type="p",pch=3,l wd=x,cex=y, col=1:25, xlim=c(0,5),ylim=c(0,5) ,bty="n", ann=F) title(main="R plotting symbols: size and width", xlab="Width (lwd)", ylab="Size (cex)")
Plotting symbols: colour • Built-in colour packages: – rainbow() – heat.colors() – terrain.colors() – topo.colors() – grey()
Vary from red to violet whiteorangered whitebrowngreen whitebrowngreenblue shades of grey
Plotting symbols: colour x<-rep(1:5,times=5) y<-rep(1:5,each=5) plot(x,y,type="p",pch=3,lwd =x,cex=y, col=rainbow(25), xlim=c(0,5),ylim=c(0,5),b ty="n", ann=F) title(main="R plotting symbols: size and width", xlab="Width (lwd)", ylab="Size (cex)")
Plotting symbols: colour x<-rep(1:5,times=5) y<-rep(1:5,each=5) plot(x,y,type="p",pch=3,lwd =x,cex=y, col=heat.colors(25), xlim=c(0,5),ylim=c(0,5),b ty="n", ann=F) title(main="R plotting symbols: size and width", xlab="Width (lwd)", ylab="Size (cex)")
Plotting symbols: colour x<-rep(1:5,times=5) y<-rep(1:5,each=5) plot(x,y,type="p",pch=3,lwd =x,cex=y, col=grey(1:25)/25, xlim=c(0,5),ylim=c(0,5),b ty="n", ann=F) title(main="R plotting symbols: size and width", xlab="Width (lwd)", ylab="Size (cex)")
Plot dengan built in color tb=c(160, 165, 175, 180, 185) bb=c(55,60,70,75,80)
R users group
An introduction to graphics in R
Plotting two variables: scatterplot plot(x=bb,y=tb)
Alternative formulations: plot(bb~tb)
Plotting two variables: scatterplot Different symbols, specified by pch parameter plot(bb~tb, pch=16)
Plotting two variables: scatterplot plot(bb~tb, type=“l”)
Plotting two variables: scatterplot plot(bb~tb, type=“l”, lty=“dotted”)
Types of lines, par(lty) x<-1:10 plot(x,y=rep(1,10),ylim=c(1,6.5), type="l",lty=1,axes=F,ann=F) title(main="Line Types") for(i in 2:6) {lines(x,y=rep(i,10),lty=i) } axis(2,at=1:6,tick=F,las=1) linenames<paste("Type",1:6,":",c("solid"," dashed","dotted","dotdash","long dash","twodash")) text(2,(1:6)+0.25,labels=linenames) box()
tb=c(160, 165, 175, 180, 185) bb=c(55,60,70,75,80)
Adding to plots: lines plot(bb,tb) reg<-lm(tb~bb) abline(reg, col="red",lty=2)
plot(bb,tb) reg<-lm(tb~bb) abline(reg, col="red",lty=2) abline(v=60,col="red")
Adding to plots: legends y1=c(2, 5, 4, 5, 12)
y2=c(2,3,4,5,4) plot(y1, type="o", col="blue", ylim=c(0,12),xlab="tahun",ylab="jumlah") lines(y2, type="o", pch=22, lty=2, col="red") title(main="Contoh aja", col.main="red", font.main=4) legend(1, 6, c("A","B"), cex=0.8, col=c("blue","red"), pch=21:22, lty=1:2)
Tugas 1 (Data Mhs Stat) Nama
Pek ORTU
IPK
Kelas
Asal Daerah
Fulan
PNS
3.4
A
Medan
Dede
PNS
2.7
A
Medan
Sondakh
WIRASWASTA
2.6
B
Jakarta
Nurdin
TNI
2.3
A
Bandung
John
WIRASWASTA
3.5
A
Bandung
Lung
WIRASWASTA
3.7
B
Jakarta
Yaris
WIRASWASTA
3.1
B
Jakarta
Asep
TNI
2.9
B
Bandung
Dedi
TNI
2.3
B
Bandung
Zeni
PNS
2.8
A
Jakarta
Nia
PNS
2.9
A
Jakarta
Sinto
PNS
3.0
B
Padang
Cucu
TNI
3.1
B
Padang
Fika
TNI
3.4
A
Medan
Neo
TNI
3.6
A
Padang
Soal • Dari data mahasiswa stat tersebut • Buatlah grafik yang menggambarkan perbedaan IPK berdasarkan • A. Pekerjaan Ortu • B. Asal Daerah • C Kelas • Dari grafik tersebut perbedaan manakah yang memiliki keseragaman yang kecil ?