[R] Error when producing multiple graphes
Uli Kleinwechter
ulikleinwechter at yahoo.com.mx
Wed Mar 19 10:26:25 CET 2008
bartjoosen schrieb:
> Could you provide us some working codo, so that we can reproduce the error
> and see what went wrong?
>
Of course. Here is the relevant part of the code I'm working with. I suppose it will be helpful for you to have the csv file, as well. But as an attachment will be deleted, I will send it to you upon request.
****
rm(list=ls(all.names=TRUE))
agr1<-read.csv2("sales.csv")
attach(agr1)
# Select variables:
type3m<-data.frame(cornmethod,maizemethod,paddymethod,ricemethod,rapemethod,ograinmethod,vegmethod,
fruitmethod,ocropmethod,pigmethod,cowmethod,poultrymethod,eggmethod,oanimalmethod,forestrymethod,fisherymethod,
rentmethod,processmethod,othermethod)
type3l<-data.frame(cornloc,maizeloc,paddyloc,riceloc,rapeloc,ograinloc,vegloc,fruitloc,ocroploc,pigloc,
cowloc,poultryloc,eggloc,oanimalloc,forestryloc,fisheryloc,rentloc,processloc,otherloc)
#Define legends for bars
barnamesm<-c("1=Village fair","2=State quota", "3=Trader", "4=Other")
barnamesloc<-c("1=nat. vill.","2=admin.
vill.","3=township","4=county","5=province","6=outside prov.")
#Print barplots into ps file
postscript("salemethods.ps", horizontal=TRUE)
for(xn in names(type3m)) barplot(table(type3m[[xn]]), main = paste
("Barplot of", xn), width=0.75,legend.text=barnamesm,
xlim=c(0,4),ylim=c(0,400))
dev.off()
#Print barplots into ps file
postscript("salelocations.ps", horizontal=FALSE)
for(xn in names(type3l)) barplot(table(type3l[[xn]]), main =
paste("Barplot of", xn),legend.text=barnamesloc,xlim=c(0,6))
dev.off()
detach(agr1)
>
> Uli Kleinwechter wrote:
>
>> Dear all,
>>
>> Within a larger script I use the following code to produce barplots for
>> all variables contained in a dataframe "type3m":
>>
>> for(xn in names(type3m)) barplot(table(type3m[[xn]]), main = paste
>> ("Barplot of", xn), width=0.75,legend.text=barnamesm,
>> xlim=c(0,4),ylim=c(0,400))
>>
>> The plots are produced and printed into a *.ps file. However, R gives an
>> error message and aborts the script. The error message is:
>>
>> Fehler in rect(as.double(xleft), as.double(ybottom),
>> as.double(xright), :
>> ungültiges erstes Argument
>>
>> (it's in German. In English, it says something like "Error in
>> rect(as.double(xleft), as.double(ybottom), as.double(xright), : invalid
>> first argument)
>>
>> It seems to be some problem with the barplot function. The variables in
>> the dataframe are discrete variables taking values from 1 to 4 (hence,
>> the xlim=c(0,4) and the graph is supposed to show the frequency of each
>> value. Maybe the problem is related to the fact that not some variables
>> don't take all of the values, i.e., there are some that don't take the
>> value 1, for example.
>>
>> I spent quite some time trying to solve the problem, but can't manage
>> it. What's wrong here and how can it be solved?
>>
>> Thank you very much!
>>
>> Uli
>>
>>
>> [[alternative HTML version deleted]]
>>
>>
>> ______________________________________________
>> R-help at 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.
>>
>>
>>
>
>
--
Uli Kleinwechter
Department of Agricultural Economics and Social Sciences
Faculty of Agriculture and Horticulture
Humboldt University of Berlin
Unter den Linden 6
D-10099 Berlin, Germany
Phone: (+49) 30 2093 6124, Fax. (+49) 30 2093 6301
E-mail: uli.kleinwechter at agrar.hu-berlin.de
More information about the R-help
mailing list