Reputation: 91
quick.hist<-ggplot(ufo.us, aes(X=DateOccured))+geom_histogram()+scale_x_date()
ggsave(plot=quick.hist,filename= "../images/hist.png",height=6, width=8)
file format is simple:
it contains 2 dates,city,state,duration
I am getting error during plot:that is during ggsave()
Error in grDevices::png(..., width = width, height = height, res = dpi,
unable to start png() device
In addition: Warning messages:
In grDevices::png(..., width = width, height = height, res = dpi,
unable to open file '../images/hist.png' for writing
In grDevices::png(..., width = width, height = height, res = dpi,
opening device failed
I am very new to R and getting error. I have just started copying the book code for histogram chart, first chapter from book machine learning hacker perspective.
Upvotes: 9
Views: 11374
Reputation: 599
I had this same problem as the OP. It appeared to be an error from ggsave()
but I traced it back to a ggarrange()
call. I was hitting my limit of open devices (~64) and needed to call dev.off()
following each ggarrange()
call. This post was helpful: Too many open devices r
Upvotes: 0
Reputation: 3631
I had the same issue. In my case, my working directory (check getwd
) was not the right one so the filepath
didn't make sense.
Upvotes: 2
Reputation: 31
I had the same problem recently. It occurs when compiling R from source without having the appropriate libraries installed. So R does not know how to talk to the png device at all.
In order to fix this problem just install the following packages (e.g. using Ubuntu16.04)
sudo apt install libcairo2-dev libjpeg9-dev
and run the ./configure again.
If those libraries were sufficient both PNG and cairo should be listed as Additional capabilities at the end of the configuration. So if none of them shows up using
cat config.log | grep skipped
you are good to go.
Upvotes: 3