[R] Help with the plot function

André Luis Neves andrluis at ualberta.ca
Tue Jun 20 06:29:27 CEST 2017


Hi, Bert:
Yes, I studied the functions you suggested, but I didn't get to adapt it to
my example whose reproducible code I sent in my first email.

Here it is the code of the functions I studies:

## par
par(mfrow = c(2, 3))
par(cex = 0.6)
par(mar = c(3, 3, 0, 0), oma = c(1, 1, 1, 1))
for (i in 1:6) {
 plot(1, 1, type = "n")
mtext(letters[i], side = 3, line = -1, adj = 0.1, cex = 0.6)}


par(mfrow = c(2, 3))
par(cex = 0.6)
par(mar = c(0, 0, 0, 0), oma = c(4, 4, 0.5, 0.5))
par(tcl = -0.25)
par(mgp = c(2, 0.6, 0))

for (i in 1:6) {
      plot(1, axes = FALSE, type = "n")
      mtext(letters[i], side = 3, line=-1,adj=0.1,cex=0.6, col = "grey40")
  if (i %in% c(4, 5, 6))
    axis(1, col = "grey40", col.axis = "grey20", at = seq(0.6,
                                                          1.2, 0.2))
  if (i %in% c(1, 4))
    axis(2, col = "grey40", col.axis = "grey20", at = seq(0.6,
                                                          1.2, 0.2))
  box(col = "grey60")}

## Layout

m <- rbind(c(1, 1), c(2, 3))
m
layout(m)
layout.show(3)
layout(m)
par(mar = c(3, 3, 0, 0))
for (i in 1:3) plot(1, 1, type = "n")

Thank you,

Andre


On Mon, Jun 19, 2017 at 9:53 PM, Bert Gunter <bgunter.4567 at gmail.com> wrote:

> 1. Did you study the functions (esp. ?layout) to which I referred you?
>
> 2. Show us your code! -- "to no avail" is meaningless!
>
> -- Bert
>
>
> Bert Gunter
>
> "The trouble with having an open mind is that people keep coming along
> and sticking things into it."
> -- Opus (aka Berkeley Breathed in his "Bloom County" comic strip )
>
>
> On Mon, Jun 19, 2017 at 7:01 PM, André Luis Neves <andrluis at ualberta.ca>
> wrote:
> > I'm trying to recreate a graph similar to the last one found on this
> link:
> > https://sites.ualberta.ca/~lkgray/uploads/7/3/6/2/
> 7362679/6c_-_line_plots_with_error_bars.pdf
> >
> > The difference is that I want budbreak on the top, and the temperatures
> at
> > the bottom.
> >
> > I tried to set par before each graph and include lines, with no avail.
> >
> > Thanks, Bert.
> >
> > Andre
> >
> > On Mon, Jun 19, 2017 at 7:41 PM, Bert Gunter <bgunter.4567 at gmail.com>
> wrote:
> >>
> >> See
> >>
> >> ?layout
> >> ?split.screen
> >> ?par  (the mfrow and mfcol values)
> >>
> >> depending exactly on what you want to do and how you want to do it.
> >> Essentially, these all allow you to make separate plots at different
> >> regions of the device.
> >>
> >>
> >> Cheers,
> >> Bert
> >>
> >>
> >>
> >>
> >> Bert Gunter
> >>
> >> "The trouble with having an open mind is that people keep coming along
> >> and sticking things into it."
> >> -- Opus (aka Berkeley Breathed in his "Bloom County" comic strip )
> >>
> >>
> >> On Mon, Jun 19, 2017 at 6:30 PM, André Luis Neves <andrluis at ualberta.ca
> >
> >> wrote:
> >> > Dear friends,
> >> >
> >> > I have the following dataframe:
> >> >
> >> > YEAR <- c(1996 , 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 )
> >> > T_MAR <- c(2.8, 6.5, 5.4,2.4, 4, 4.1, 3, 4.4, 4.5)
> >> > T_APR <- c(5.7, 7.8, 7.7, 4.6, 4.7, 6.2,5.7, 5.9, 7)
> >> > T_MAY <- c(7, 8.8, 10, 6, 5.5, 7.6, 8.5, 7.3, 10.2)
> >> > BUD <- c(87, 98, 93, 85, 89, 91, 87, 92, 92)
> >> > BUD_SE <- c(3.6, 2, 2.4, 4, 2.4, 2.4, 4, 2.4, 3)
> >> > g1 <- data.frame(YEAR, T_MAR, T_APR, T_MAY, BUD, BUD_SE)
> >> >
> >> > ###PLOT
> >> > dev.new(width=6.5, height=5)
> >> > par (cex=1, family="sans", mar=c(5,5,5,5.5))
> >> > plot(T_MAR~YEAR, type="l", pch=19, ann=F, axes=F, xlim=c(1996,2004),
> >> > ylim=c(0,12), data=g1)
> >> >
> >> > title(ylab="Temperature (°C)",xlab="Year")
> >> > axis(1, at=seq(1996, 2004, 2))
> >> > axis(2, at=c(0,3,6,9,12), las=2)
> >> > par(new=T)
> >> > plot(BUD~YEAR, type="o", ann=F, axes=F, pch=19,
> ylim=c(60,100),data=g1)
> >> > axis(4, las=2)
> >> > mtext("Bud Break (Julian Day)", side=4, padj=4)
> >> > arrows(g1$YEAR,g1$BUD, g1$YEAR,g1$BUD + g1$BUD_SE, length=0.05,
> >> > angle=90)
> >> > arrows(g1$YEAR,g1$BUD, g1$YEAR,g1$BUD-g1$BUD_SE, length=0.05,
> angle=90)
> >> >
> >> >
> >> >
> >> > However, I'd like to draw a multi-panel graph with budbreak on the top
> >> > (as
> >> > it is), and with the temperatures for March, April, and May on the
> >> > bottom,
> >> > with their respective legends.
> >> >
> >> > I was wondering if you could help me out with this.
> >> >
> >> > Thanks a million for your help.
> >> >
> >> > --
> >> > Andre
> >> >
> >> >         [[alternative HTML version deleted]]
> >> >
> >> > ______________________________________________
> >> > R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> >> > 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.
> >
> >
> >
> >
> > --
> > Andre
>



-- 
Andre

	[[alternative HTML version deleted]]



More information about the R-help mailing list