Re: [R] How to make a plot?

From: Romain Francois <francoisromain_at_free.fr>
Date: Wed 14 Dec 2005 - 04:05:36 EST

Le 13.12.2005 14:32, Gabor Grothendieck a écrit :

>Does anyone have an idea of how to make a chart in R like the
>ones here that use a graphic:
>
>http://bigpicture.typepad.com/comments/images/slide1.gif
>
>
Hi Gabor,

Here's a first draft.

The following code will produce a pdf (i only found transparancy support in pdf devices) which will be converted afterwards into a png file using (thanks to imageMagick) :

$ convert output.pdf output.png

Everything is there :
http://addictedtor.free.fr/misc/gabor/
Background image : http://addictedtor.free.fr/misc/gabor/cruise.pnm

Code : http://addictedtor.free.fr/misc/gabor/gabor.R
Pdf output : http://addictedtor.free.fr/misc/gabor/output.pdf
Png output : http://addictedtor.free.fr/misc/gabor/output.png

Romain

Code :

#########################################
require(pixmap)
require(grid)

x <- read.pnm('cruise.pnm')

pdf('output.pdf', width=6, height=4, version="1.4")

par(mar=c(0,0,0,0))

plot(x) # base graphics

y <- c(6, 6.5, 7, 8, 8.5, 8.2, 10, 9.6, 9.7, 9) # some data like in the picture you gave

# now the grid stuff

pushViewport(viewport(xscale=c(0,10),

                      yscale=c(0,10)))

grid.rect(x=0:9,
          y=0,
          width=1,
          height=y,
          default.units="native",
          gp=gpar(fill="white", alpha=0.7, col="gray", lwd=2),
          just=c("left","bottom"))

grid.rect(x=0:9,
          y=y,
          width=1,
          height= unit(1, "npc") - unit(y, "native") ,
          default.units="native" ,
          gp=gpar(fill="white", col="white"), just=c("left","bottom"))

grid.lines(x=c(0,10), y=c(5, 5), default.units="native", gp=gpar(lwd=2, col="white", lty="dotted"))  

grid.lines(x=c(0,10), y=c(10, 10), default.units="native", gp=gpar(lwd=2, col="gray", lty="dotted"))

popViewport()

dev.off()

#################################################


-- 
visit the R Graph Gallery : http://addictedtor.free.fr/graphiques
mixmod 1.7 is released : http://www-math.univ-fcomte.fr/mixmod/index.php
+---------------------------------------------------------------+
| Romain FRANCOIS - http://francoisromain.free.fr               |
| Doctorant INRIA Futurs / EDF                                  |
+---------------------------------------------------------------+

______________________________________________
R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
Received on Wed Dec 14 05:34:49 2005

This archive was generated by hypermail 2.1.8 : Wed 14 Dec 2005 - 09:33:17 EST