library(MASS)

firms <- c("MYLAN","NOVOPHARM","LEMMON","GENEVA","COPLEY_PHARM","ROXANE_LABS",
           "PUREPAC_PHARM","WATSON_LABS","MUTUAL_PHARM","OTHER")

ps.options(horizontal=FALSE,onefile=FALSE)
ps.options(pagecentre=TRUE)
ps.options(paper="letter")
ps.options(width=7.0,height=9.0)
  
filename <- "an.usrvar.smo.Xave.dat"  

tmp <- scan(filename)
rows <- tmp[1]
cols <- tmp[2]
Xave <- matrix(tmp[3:(2+rows*cols)],nrow=rows,ncol=cols)

nfirm <- rows

filename <- "an.usrvar.smo.Yave.dat"  

tmp <- scan(filename)
rows <- tmp[1]
cols <- tmp[2]
Yave <- matrix(tmp[3:(2+rows*cols)],nrow=rows,ncol=cols)

filename <- "an.usrvar.smo.Acer.dat"  

tmp <- scan(filename)
rows <- tmp[1]
cols <- tmp[2]
Acer <- matrix(tmp[3:(2+rows*cols)],nrow=rows,ncol=cols)

filename <- "an.usrvar.smo.Aave.dat"  

tmp <- scan(filename)
rows <- tmp[1]
cols <- tmp[2]
Aave <- matrix(tmp[3:(2+rows*cols)],nrow=rows,ncol=cols)

logCu <- Xave
A <- Yave[1:nfirm,]
logCk <- Yave[(nfirm+1):(nfirm+nfirm),]
logPi <- Yave[nfirm+nfirm+1,]

logC <- logCu + logCk

maxlogC <- max(logC)
minlogC <- min(logC)

maxlogPi <- max(logPi)
minlogPi <- min(logPi)

n <- ncol(logC)

idx <- seq(1,n)

maxidx <- max(idx)
minidx <- min(idx)

N <- mat.or.vec(1,n)
for (i in 1:nfirm) N <- N + A[i,]

offset <- 0.5

loline <- mat.or.vec(1,n)
for (i in 1:n) loline[i] <- min(logPi-offset)

filename <- paste("an.usrvar.smo.logCR.",nfirm,"f.eps",sep="")
postscript(file=filename)
par(mfrow=c((nfirm+1),1),mar=c(2.5,4,1.6,2)+0.1) # mar=c(bottom,left,top,right)

for (i in 1:nfirm) {
  plot(c(minidx,maxidx),c(minlogC-maxlogPi,maxlogC-minlogPi),
    type="n",xlab="",ylab="")
    title(paste(firms[i],"'s log cost - log total revenue ",sep=""))
    lines(idx,logC[i,]-logPi,lty="solid")
    for (j in 1:n) {
      if (A[i,j] == 1) { points(idx[j],logC[i,j]-logPi[j],pch="o") }
    }
}

plot(c(idx,idx),c(logPi,logPi-offset),type="n",xlab="",ylab="")
  title("log total revenue")
  lines(idx,logPi,lty="solid")
  points(idx,loline+0.1,pch=as.character(N))

dev.off()

filename <- paste("an.usrvar.smo.logC.",nfirm,"f.eps",sep="")
postscript(file=filename)
par(mfrow=c((nfirm+1),1),mar=c(2.5,4,1.6,2)+0.1) # mar=c(bottom,left,top,right)

for (i in 1:nfirm) {
  plot(c(minidx,maxidx),c(minlogC,maxlogC),type="n",xlab="",ylab="")
    title(paste(firms[i],"'s log cost",sep=""))
    lines(idx,logC[i,],lty="solid")
    for (j in 1:n) {
      if (A[i,j] == 1) { points(idx[j],logC[i,j],pch="o") }
    }
}

plot(c(idx,idx),c(logPi,logPi-offset),type="n",xlab="",ylab="")
  title("log total revenue")
  lines(idx,logPi,lty="solid")
  points(idx,loline+0.1,pch=as.character(N))

dev.off()

ps.options(horizontal=FALSE,onefile=FALSE)
ps.options(pagecentre=TRUE)
ps.options(paper="letter")
ps.options(width=7.0,height=5.0)

offset <- 0.15
for (i in 1:n) loline[i] <- -offset 

filename <- paste("an.usrvar.smo.Acer.",nfirm,"f.eps",sep="")
postscript(file=filename)
par(mfrow=c((nfirm),1),mar=c(2.5,4,1.6,2)+0.01) # mar=c(bottom,left,top,right)

for (i in 1:nfirm) {
  plot(c(minidx,maxidx),c(-offset,1),
    type="n",xlab="",ylab="")
    title(paste(firms[i],"'s classification error rate ",sep=""))
    lines(idx,Acer[i,1:n],lty="solid")
    points(idx,loline,pch=as.character(A[i,]))
}

print(" ")
print("cer per firm")
print(" ")
print(Acer[,n+1])
print("overall cer")
print(Acer[1,n+2])

dev.off()

filename <- paste("an.usrvar.smo.Aave.",nfirm,"f.eps",sep="")
postscript(file=filename)
par(mfrow=c((nfirm),1),mar=c(2.5,4,1.6,2)+0.01) # mar=c(bottom,left,top,right)

for (i in 1:nfirm) {
  plot(c(minidx,maxidx),c(0,1),
  #plot(c(minidx,maxidx),c(-offset,1),
    type="n",xlab="",ylab="")
    title(paste(firms[i],"'s entry decisions",sep=""))
    #lines(idx,Aave[i,1:n],lty="solid")
    points(idx,Aave[i,],pch="x")
    #points(idx,loline,pch=as.character(A[i,]))
    points(idx,A[i,],pch="o")
}

print(" ")
print("cer per firm")
print(" ")
print(Acer[,n+1])
print("overall cer")
print(Acer[1,n+2])

dev.off()

