On Jan 11, 2011, at 9:27 PM, David Winsemius wrote:


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.)

I guess it's true to say that I misunderstood when Venables and Langfelder _didn't_ say either of those things. They said that plot(plot(hc)) was not needed and I have now seen the light. The missing ingredient in the OP's frustrations is still dev.off().


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

David Winsemius, MD
West Hartford, CT

______________________________________________
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