Sorry. My last message maybe was not very helpful. Please find here a
more concise form of the code. It produces a dataframe of more or less
the characteristics of the one that I use and yields the same error message:
*****
x1<-c(1,2,3,4,NA ,NA ,NA, 3, 1, 1, 1, 1, 2, 2, 3, 4, 4)
x2<-c(2,3,4,3,4,3,4,2,2,3,4,NA,NA,NA,NA,4,3)
x3<-c(NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA)
x4<-c(1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,1,2)
type3m<-data.frame(x1,x2,x3,x4)
barnamesm<-c("1=One","2=Two", "3=Three", "4=Four")
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))
****
Thanks again!
Uli
bartjoosen schrieb:
Could you provide us some working codo, so that we can reproduce the error
and see what went wrong?
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]]