[R] Problems creating a PNG file for a dendrogram: "Error in plot.window(...) : need finite 'xlim' values"

David Winsemius dwinsemius at comcast.net
Wed Jan 12 03:27:07 CET 2011


On Jan 11, 2011, at 7:01 PM, Richard Vlasimsky wrote:

>
> Has anyone successfully created a PNG file for a dendrogram?
>
> I am able to successfully launch and view a dendrogram in Quartz.   
> However, the dendrogram is quite large (too large to read on a  
> computer screen), so I am trying to save it to a file (1000x4000  
> pixels) for viewing in other apps.  However, whenever I try to  
> initiate a PNG device, I get a "need finitite 'xlim' values" error.
>
>
>
> Here is some example code to illustrate my point:
>
> cor.matrix <-  
> cor(mydata,method="pearson",use="pairwise.complete.obs");
> distance <- as.dist(1.0-cor.matrix);
> hc <- hclust(distance);
> p <- plot(hc);
> plot(p);
> #This works!  Plot is generated in quartz no problem.
>
>
> #Now, try this:
> png(filename="delme.png",width=4000,height=1000);
> cor.matrix <-  
> cor(mydata,method="pearson",use="pairwise.complete.obs");
> distance <- as.dist(1.0-cor.matrix);
> hc <- hclust(distance);
> p <- plot(hc);
> plot(p);
> #Error in plot.window(...) : need finite 'xlim' values
> #In addition: Warning messages:
> #1: In min(x) : no non-missing arguments to min; returning Inf
> #2: In max(x) : no non-missing arguments to max; returning -Inf
> #3: In min(x) : no non-missing arguments to min; returning Inf
> #4: In max(x) : no non-missing arguments to max; returning -Inf

I'm not sure the other two answers address the problems I found. When  
I try to set up a png file with the parameters width=4000,height=1000,  
on a Mac I intially got no plot with what is an otherwise valid  
command. But after successfully getting plotting to a png device the  
logjam appear broken. Try:

  graphics.off()
  dev.list()
#NULL
  png(filename="delme.png",width=4000,height=1000);
  plot(hc)
  dev.off()


(Of course I used dev.off() which you did not, but even adding  
dev.off() was not enough to get success, at least initially. I don't  
understand the suggestion to get rid of plot(hc) or the suggestion  
that hclust() returns NULL. That's certainly not how I read the help  
page and examples for hclust.)
>
> This is the exact same code, only a prior call to png() causes the  
> seemingly unrelated xlim to fail.  Why is this?
>
> Thanks,
> Richard Vlasimsky


David Winsemius, MD
West Hartford, CT



More information about the R-help mailing list