[R] Getting R to emit an image file as a pipe or Base64 stream: Mac OSX 10.3 - R 2.0.1

Thuan-Jin Kee kee at wehi.EDU.AU
Fri Dec 3 02:07:24 CET 2004


Hi All,

Anybody know how to make R emit base64 encoded text in some way that perl
can grab it, instead of planting a file on your harddrive when calling
JPEG or PNG?
I've managed to get these scripts to work and put a file on the harddisk

#!/usr/bin/perl -Wall
# by jin kee. a simple script to demonstrate
# the needed steps to get R to emit a jpeg.

use strict;

my($callR, $callRold);

# need to start X if is isn't already started.
`open /Applications/Utilities/X11.app`;


#need to get let the R program know where to look
#for the display immediately before calling
#the R executible.
$callR =<<MARKER;
DISPLAY=:0.0; export DISPLAY;
/usr/bin/R --vanilla <plotscript.R;
MARKER

system($callR);

# end script

#!/usr/bin/R
peg("~/Desktop/test.jpg");
plot(rnorm(100));
dev.off();
q(save = "no");


My sysadmin says that the apache user can't write to the disk due to
security policy, so he wants to know if I can emit the jpeg as a base64
stream and embedd it into the dynamically generated tag using a DATA tag
to inline the image.

http://www.elf.org/essay/inline-image.html

http://www.faqs.org/rfcs/rfc2397.html

i've tried searching the R-project.org site and help.search() and no luck.

Yours
Jin




More information about the R-help mailing list