dta <- read.table("data/state77.txt",h=T,row.names = 1)
#plot(dta[,])
panel.cor <- function(x, y, digits = 2, prefix = "", cex.cor, ...) {
    usr <- par("usr"); on.exit(par(usr))
    par(usr = c(0, 1, 0, 1))
    r <- abs(cor(x, y, use="pair"))
    txt <- format(c(r, 0.123456789), digits = digits)[1]
    txt <- paste0(prefix, txt)
    if(missing(cex.cor)) cex.cor <- 0.8/strwidth(txt)
    text(0.5, 0.5, txt, cex = cex.cor * r)
}
pairs(dta[, c(5,3,6)],lower.panel = panel.smooth, upper.panel = panel.cor)

library(reshape)
dta <- read.table("data/15c.txt",h=T)
colnames(dta) <- c("Country","25-34","35-44","45-54","55-64","65-74")
dtalong <- melt(dta);colnames(dtalong) <- c("Country","Age","Freq")
#boxplot(Freq~Age,data=dtalong,xlab="AGE",ylab="Freq",horizontal=T)
boxplot(Freq~Age,data=dtalong,xlab="AGE",ylab="Freq")

dta <-  read.table(file="http://www.ccunix.ccu.edu.tw/~psycfs/dataM/Data/family.txt",h=T)
stripchart(dta$liberalism~dta$family,type="n",
           ylab="Family",xlab="Rating of Liberalism",main="Family Resemblance",
           ylim=c(min(as.numeric(dta$family))-0.5,max(as.numeric(dta$family))+0.5))
points(dta$liberalism,jitter(dta$family), col = "black", pch = 19)
abline(v=mean(dta$liberalism),lty=2)
for (i in 1:4){
        segments(mean(dta$liberalism),i,mean(subset(dta,dta$family==i)$liberalism),i, lty=2)
        segments(mean(subset(dta,dta$family==i)$liberalism),i+0.1,mean(subset(dta,dta$family==i)$liberalism),i-0.1, lty=2)
        }

dta <- read.table(file="http://www.ccunix.ccu.edu.tw/~psycfs/dataM/Data/cigarettes.txt",h=T)
plot(dta$consumption,dta$death,type="n",ylab="Death rate",xlab="Consumption")
text(dta$consumption,dta$death, dta$Country,col="black",cex=0.5)
abline(lm(dta$death~dta$consumption),lty=2)

set.seed(888)
dta <- cbind(rnorm(512,0,1),rnorm(512,0,1))
out <- function(dta){
        return(rbind(subset(dta,abs(dta[,1])>= 1.96&abs(dta[,2]) >= 1.96)))}
plot(dta[,1],dta[,2],
     xlab="Standrad normal variate",
     ylab="Standrad normal variate",
     main="Outliers in red",
     xlim=c(-4,4),ylim=c(-4,4),
     col=ifelse(dta[,1]==out(dta)[,1]&dta[,2]==out(dta)[,2],"red","black"),
     pch=ifelse(dta[,1]==out(dta)[,1]&dta[,2]==out(dta)[,2],19,1))
abline(h=c(1.96,-1.96),v=c(1.96,-1.96),lty=2,col="grey")

# easier solution
#plot(dta[,1],dta[,2],
#     xlab="Standrad normal variate",
#     ylab="Standrad normal variate",
#     main="Outliers in red",
#     xlim=c(-4,4),ylim=c(-4,4),
#     col=ifelse(abs(dta[,1])>1.96&abs(dta[,2])>1.96,"red","black"),
#     pch=ifelse(abs(dta[,1])>1.96&abs(dta[,2])>1.96,19,1))
#abline(h=c(1.96,-1.96),v=c(1.96,-1.96),lty=2,col="grey")
dta <- read.table(file="http://www.ccunix.ccu.edu.tw/~psycfs/dataM/Data/bullying.txt",h=T)
#head(dta)
hist(dta$nomination,freq = F,xlab="Number of nomination", main="Histogram of Nomination",axes=F)
axis(1)
axis(2,at=c(0.00,0.05,0.10,0.15),labels=c("0.00"," ","0.10"," "))

plot(density(dta$nomination),axes=F,main="Nomination Distribution", 
          xlab=paste("N =",density(dta$nomination)$n,"   ",
                "Bandwith =",round(density(dta$nomination)$bw,4)))
axis(1)
axis(2,at=seq(0,0.5,by=0.1),labels=c("0.0"," ","0.2"," ","0.4"," "))
abline(h=0,col="gray")
box()
rug(dta$nomination, col="lightblue",side=3)

hist(dta$score,freq = F,xlab="Score", main="Histogram of Scores",axes=F)
axis(1)
axis(2,at=seq(0.00,1.00,by=0.2),labels=c("0.0"," ","0.4"," ","0.8"," "))

plot(density(dta$score),axes=F,main="Score Distribution", 
     xlab=paste("N =",density(dta$score)$n,"   ",
                "Bandwith =",round(density(dta$score)$bw,4)))
axis(1)
axis(2,at=seq(0.00,1.00,by=0.2),labels=c("0.0"," ","0.4"," ","0.8"," "))
abline(h=0,col="gray")
box()
rug(dta$score, col="lightblue",side=3)