On 12-06-08 6:46 AM, yhj...@googlemail.com wrote:
Dear Duncan



Thanks a lot for your hints.

As you can see from my code (just one line above the command using dev.copy) I 
have tried using pdf but got same problem, so I hushed it out.

That's not the right place to put the pdf() call, it should appear before any of the graphing calls. To keep the pdf resolution, you need to plot to the pdf device.

Duncan Murdoch


Any ideas??

Many thanks!

HJ
Sent using BlackBerry® from Orange

-----Original Message-----
From: Duncan Murdoch<murdoch.dun...@gmail.com>
Date: Fri, 08 Jun 2012 05:21:52
To: HJ YAN<yhj...@googlemail.com>
Cc: r-help@r-project.org<r-help@r-project.org>
Subject: Re: [R] Resolution issue with exporting plots from R and write tables
  in Latex code for producing pdf document

On 12-06-07 10:08 PM, HJ YAN wrote:
Dear R users

I am trying to exporting plots from R to an external folder, or to the
working directory, but the resolution of plots (pdf file) largely reduced.
Any way I can get same quality as my original plots?? e.g. I tested the
plotting part using one example and obtained pretty good (/readable)
quality for each plot in the (4*4) multiple graph. But when I did the loop
and tried to export those plots out using 'dev.copy', the quality was not
same. I do need this loop function as there are 400 datasets so I can not
handle them manually.

Don't use dev.copy.  Use pdf() then dev.off() to produce the plots in
the first place.



Also I am using 'xtable' to write Latex code for my summary tables of the
data (again there are 400 datasets). I saved those Latex code in a list and
use 'sink()' to save them outside the loop function, which works ok. But as
my table is wide, so I found that the Latex code produced by xtable can not
fit my purpose well, e.g. I have set size to 'tiny' but the table still too
wide. Is there an alternative package more handy to do the job? Also are
there a good way to write some hundred tables from R to Latex for producing
pdf documents in an easier fashion?? i.e. Just realised that Latex does not
like compiling large amount tables/figures in one go!

latex has a lot of packages for handling large tables, but it may be
better to redesign your table to not be so wide.  The tables package
might help with this, but it doesn't have any particular support for
wide tables.

Duncan Murdoch




Any advices/ideas are greatly appreciated!


Best wishes
HJ




Below is my code...
=====================
SumTab<-function(Data=SortedDataInList,StartDate="30/1/12",EndDate="31/05/12",StartTime="22:50:00",EndTime="23:00:00"){
    Start= chron(StartDate,StartTime , format=c(dates="d/m/y", times="h:m:s"))
    End= chron(EndDate,EndTime , format=c(dates="d/m/y", times="h:m:s"))
    deltat<- times("00:10:00")
    TT<- seq(Start,End, by = times("00:10:00"))
    TT1 = substr(TT, 2, 18)


    Data1=Data
    for (i in 1:length(Data1)){
      SumTab1[[i]]= matrix(NA, nrow=5, ncol=ncol(SortedDataInList[[i]])-4)
      SortedDataInList1[[i]]= matrix(NA, nrow=length(TT1),
ncol=ncol(Data1[[i]]))

SortedDataInList1[[i]]=Data1[[i]][match(as.character(TT1),as.character(Data1[[i]][,1])),]


      SumTab1[[i]][1,]<-apply(SortedDataInList1[[i]][,4:16],2,min)
      SumTab1[[i]][2,]<-apply(SortedDataInList1[[i]][,4:16],2,mean)
      SumTab1[[i]][3,]<-apply(SortedDataInList1[[i]][,4:16],2,median)
      SumTab1[[i]][4,]<-apply(SortedDataInList1[[i]][,4:16],2,sd)
      SumTab1[[i]][5,]<-apply(SortedDataInList1[[i]][,4:16],2,max)



colnames(SumTab1[[i]])=c("vOL1","VOL2","VOL3","CUR1","CUR2","CUR3","THD1","THD2","THD3","RPD","RPR","RAPD","RAPR")
      rownames(SumTab1[[i]])=c("Min","Mean","Standard
Deviation","Median","Max")


SumLax[[i]]<-xtable(SumTab1[[i]],label=as.character(StationsInDir[i]),caption=as.character(StationsInDir[i]))


      par(mfrow=c(4,4),oma=c(4,0,2,0))

plot(1:length(SortedDataInList1[[i]][,1]),SortedDataInList1[[i]][,4],xlim=c(1,length(SortedDataInList1[[i]][,1])),ylab="Voltage
1 (v)",xlab="Date/Time ind.(10 min. int.)",type="p",cex=.001)

plot(1:length(SortedDataInList1[[i]][,1]),SortedDataInList1[[i]][,5],xlim=c(1,length(SortedDataInList1[[i]][,1])),ylab="Voltage
2 (v)",xlab="Date/Time ind.(10 min. int.)",type="p",cex=.001)

plot(1:length(SortedDataInList1[[i]][,1]),SortedDataInList1[[i]][,6],xlim=c(1,length(SortedDataInList1[[i]][,1])),ylab="Voltage
3 (v)",xlab="Date/Time ind.(10 min. int.)",type="p",cex=.001)

plot(1:length(SortedDataInList1[[i]][,1]),SortedDataInList1[[i]][,7],xlim=c(1,length(SortedDataInList1[[i]][,1])),ylab="Current
1 (A)",xlab="Date/Time ind.(10 min. int.)",type="p",cex=.001)

plot(1:length(SortedDataInList1[[i]][,1]),SortedDataInList1[[i]][,8],xlim=c(1,length(SortedDataInList1[[i]][,1])),ylab="Current
2 (A)",xlab="Date/Time ind.(10 min. int.)",type="p",cex=.001)

plot(1:length(SortedDataInList1[[i]][,1]),SortedDataInList1[[i]][,9],xlim=c(1,length(SortedDataInList1[[i]][,1])),ylab="Current
3 (A)",xlab="Date/Time ind.(10 min. int.)",type="p",cex=.001)

plot(1:length(SortedDataInList1[[i]][,1]),SortedDataInList1[[i]][,10],xlim=c(1,length(SortedDataInList1[[i]][,1])),ylab="Total
harmonic distortion 1 (%)",xlab="Date/Time ind.(10 min.
int.)",type="p",cex=.001)

plot(1:length(SortedDataInList1[[i]][,1]),SortedDataInList1[[i]][,11],xlim=c(1,length(SortedDataInList1[[i]][,1])),ylab="Total
harmonic distortion 2 (%)",xlab="Date/Time ind.(10 min.
int.)",type="p",cex=.001)

plot(1:length(SortedDataInList1[[i]][,1]),SortedDataInList1[[i]][,12],xlim=c(1,length(SortedDataInList1[[i]][,1])),ylab="Total
harmonic distortion 3 (%)",xlab="Date/Time ind.(10 min.
int.)",type="p",cex=.001)

plot(1:length(SortedDataInList1[[i]][,1]),SortedDataInList1[[i]][,13],xlim=c(1,length(SortedDataInList1[[i]][,1])),ylab="Real
power delivered  (mw)",xlab="Date/Time ind.(10 min.
int.)",type="p",cex=.001)

plot(1:length(SortedDataInList1[[i]][,1]),SortedDataInList1[[i]][,14],xlim=c(1,length(SortedDataInList1[[i]][,1])),ylab="Real
power received  (mw)",xlab="Date/Time ind.(10 min. int.)",type="p",cex=.001)

plot(1:length(SortedDataInList1[[i]][,1]),SortedDataInList1[[i]][,15],xlim=c(1,length(SortedDataInList1[[i]][,1])),ylab="Reactive
power delivered (MVAr)",xlab="Date/Time ind.(10 min.
int.)",type="p",cex=.001)

plot(1:length(SortedDataInList1[[i]][,1]),SortedDataInList1[[i]][,16],xlim=c(1,length(SortedDataInList1[[i]][,1])),ylab="Reactive
power received (MVAr)",xlab="Date/Time ind.(10 min.
int.)",type="p",cex=.001)
      title(main=StationsInDir[i],outer=TRUE,cex.main=2.0)
      mtext(side=1,Start, outer = TRUE, line=0,cex = 0.6)
      mtext(side=1,End, outer = TRUE, line=2,cex = 0.6)


      #pdf(paste(as.character(StationsInDir[i]),".pdf"))
      dev.copy(pdf,file=paste(as.character(StationsInDir[i]),".pdf"))
      dev.off()

    }
}

        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to