R Script : Membuat Pie Chart Series

Rekan-rekan ini sedikit contoh kolaborasi antara library(grid) dan plot, sehingga kita bisa menampilkan data dalam visualisasi yang lebih mudahdipahami.

Thanks buat mas Fajar atas masukannya dan sempat menyediakan data, sehingga “rasa penasaran” saya untuk sedikit membantu dalam memberi contoh “menampilkan banyak data (analisis) dalam satu plot” dapatterlaksana.

Thanks for R Community :)

Berikut ini saya sertakan scriptnya :

### Author : Unung Istopo H
### Organization : Enciety
### Last Modified : 18 Juni 2004


require(gridBase)
x < – c(17,6,117)
y <- c(51,19,264)
nama <- c(“Surya”,”Kompas”,”Jawa Pos”)
z <- matrix(c(28,10,99,21,9,145), ncol=2)
oldpar <- par(no.readonly = TRUE)

plot(x,y, xlim=c(0,120),ylim=c(0,300),xlab=”Jumlah
Pelanggan”,ylab=”Jumlah Pembaca”)
title(“Jumlah Pelanggan * Jumlah Pembaca * Prosentase Kepemilikan
Komputer”)
for (i in 1:3) {
mtext(nama[i], side=1, line=2, at=x[i], cex=1, col=”darkblue”) }

vps <- baseViewports()
par(new = TRUE)
push.viewport(vps$inner, vps$figure, vps$plot)
grid.segments(x0 = unit(c(rep(0,3),x),rep(c(“npc”,”native”),each=3)),
x1= unit(c(x,x),rep(“native”,6)),
y0 =unit(c(y,rep(0,3)),rep(c(“native”,”npc”),each=3)),
y1 =unit(c(y,x),rep(“native”,6)),gp=gpar(lty=”dashed”,col=”grey”))

maxpiesize <- unit(0.65, “inches”)
totals <- c(10,10,10)
sizemult <- totals/max(totals)

for (i in 1:3) {
push.viewport(viewport(x=unit(x[i],”native”),y=unit(y[i],”native”),
width=sizemult[i]*maxpiesize,
height=sizemult[i]*maxpiesize))
   grid.rect(gp=gpar(col=”grey”,fill=”white”,lty=”dashed”))
   par(plt=gridPLT(), new=TRUE)
   pie(z[i,], radius = 1,
labels=c(“Memiliki”,”Tidak”),col=c(“red”,”green”))
   pop.viewport()
}

pop.viewport(3)
par(oldpar)

Hasilnya adalah sebagai berikut :

Both comments and pings are currently closed.

Comments are closed.

Sorry, no posts matched your criteria.