findGraphicsDevice.System: Searches for a working PNG device
Description
Searches for a working PNG device.
On Unix, the png device requires that X11 is available, which it is not
when running batch scripts or running Rremotely. In such cases, an
alternative is to use the bitmap()
device, which generates an
EPS file and the uses Ghostscript to transform it to a PNG file.
Moreover, if identical looking bitmap and vector graphics (EPS) files
are wanted for the same figures, in practice, bitmap()
has
to be used.
By default, this method tests a list of potential graphical devices and
returns the first that successfully creates an image file.
By default, it tries to create a PNG image file by first testing the
bitmap()
device (via png2()
) and then the built-in
png()
device.Usage
System$findGraphicsDevice(devices=list(png2, png), maxCount=300, sleepInterval=0.1, findGhostscript=TRUE, ...)
Arguments
maxCount
The maximum number of subsequent tests for the
the existances of bitmap()
generated image files.
sleepInterval
The time in seconds between above subsequent
tests.
findGhostscript
If TRUE
, ghostscript, which is needed by
the bitmap()
device, is searched for on the current system.
If found, its location is recorded. synopsis
findGraphicsDevice.System(static, devices=list(png2, png), maxCount=300, sleepInterval=0.1, findGhostscript=TRUE, ...)Examples
Run this codefcn <- System$findGraphicsDevice();
if (identical(fcn, png)) {
cat("PNG device found: png()");
} else if (identical(fcn, png2)) {
cat("PNG device found: png2()");
} else if (identical(fcn, bitmap)) {
cat("PNG device found: bitmap()");
} else {
cat("PNG device not found.");
}
Run the code above in your browser using DataLab