Hello,

Inline.

Às 16:54 de 25/07/2020, H escreveu:
On 07/24/2020 05:56 PM, Rui Barradas wrote:
Hello,

I've just tried it.

library(ggplot2)
#library(grid)
library(cowplot)

s <- ggplot(data = subset(iris, Species == 'virginica'), aes(Sepal.Length, 
Sepal.Width)) + geom_point()
v <- ggplot(data = subset(iris, Species == 'setosa'), aes(Sepal.Length, 
Sepal.Width)) + geom_point()

#g2 <- ggplotGrob(s)
#g3 <- ggplotGrob(v)
#g <- rbind(g2, g3, size = "first")

cowplot::plot_grid(s, v, align = "h", nrow = 2, rel_heights = 2:1)


Hope this helps,

Rui Barradas

Às 19:57 de 24/07/2020, Felipe Carrillo via R-help escreveu:
What about cowplot?
https://cran.r-project.org/web/packages/cowplot/vignettes/introduction.html

      On Friday, July 24, 2020, 11:51:17 AM PDT, H <age...@meddatainc.com> 
wrote:
     On 07/24/2020 02:03 PM, Jeff Newmiller wrote:
The set of people interested in helping when you supply a minimal reproducible 
example is rather larger than the set of people willing to read the 
documentation for you (hint) and guess what aspect of alignment you are having 
trouble with.

On July 24, 2020 10:46:57 AM PDT, H <age...@meddatainc.com> wrote:
On 07/24/2020 01:14 PM, John Kane wrote:
<i>Well, I am not looking for help debugging my code but for
information to better understand arranging plots vertically. The code
above aligns them horizontally as expected.</i>
Sigh, we know the code works but we do not know what the plots are
and we cannot play around with them to see if we can help you if we
have nothing to work with.
On Fri, 24 Jul 2020 at 12:12, H <age...@meddatainc.com
<mailto:age...@meddatainc.com>> wrote:
      On 07/24/2020 05:29 AM, Erich Subscriptions wrote:
      > Hav a look at the packages cowplot and patchwork
      >
      >> On 24.07.2020, at 02:36, H <age...@meddatainc.com
<mailto:age...@meddatainc.com>> wrote:
      >>
      >> I am trying to arrange two plots vertically, ie plot 2 below
plot 1, where I want the plots to align columnwise but have a height
ratio of eg 3:1.
      >>
      >> My attempts so far after consulting various webpages is that
the following code aligns them columnwise correctly but I have, so far,
failed in setting the relative heights...
      >>
      >> g2<-ggplotGrob(s)
      >> g3<-ggplotGrob(v)
      >> g<-rbind(g2, g3, size = "first")
      >> g$widths<-unit.pmax(g2$widths, g3$widths)
      >>
      >> what would the appropriate statement for the relative heights
to add here be?
      >>
      >> grid.newpage()
      >> grid.draw(g)
      >>
      >> Thank you!
      >>
      >> ______________________________________________
      >> R-help@r-project.org <mailto:R-help@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.
      So this is not possible without using one of those two packages?
I got the impression I should be able to use grid.arrange to do so but
was not able to get it to work without disturbing the width alignment
above...
      ______________________________________________
      R-help@r-project.org <mailto:R-help@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.
--
John Kane
Kingston ON Canada
No need to play around with anything. I am simply looking for
assistance on how to use eg arrangeGrob to not only align two plots
columnwise but also adjust their heights relative to each other rather
than 1:1.

Can arrangeGrob() be used for that?


      [[alternative HTML version deleted]]

______________________________________________
R-help@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.
Look at https://cran.r-project.org/web/packages/egg/vignettes/Ecosystem.html 
where there are two mpg charts, one above the other. What would I need to add 
to:

|library(gtable) g2 <-ggplotGrob(p2) g3 <-ggplotGrob(p3) g <-rbind(g2, g3, size = 
"first") g$widths <-unit.pmax(g2$widths, g3$widths) grid.newpage() grid.draw(g) |

|to make the second chart 1/2 the size of the top one?|

||


      [[alternative HTML version deleted]]

______________________________________________
R-help@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.
        [[alternative HTML version deleted]]

______________________________________________
R-help@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.

Thank you for your example. However, this does not align the plot areas 
horizontally. It happens to do so in this example because the y-axis labels are 
the same length etc but when this is not the case, it fails.

Maybe it fails but can you give an example?
The question, as far as I understand it, is about the plots' relative heights, not about horizontal alignment. And (all) others have asked you to give a reproducible example, please don't ask us to guess a use case axis labels lengths (!), which is impossible to do.

Anyway, the function cowplot::plot_grid has an argument `align`. One of the possible values is "hv" for both horizontal and vertical alignment.

Hope this helps,

Rui Barradas


______________________________________________
R-help@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.


--
Este e-mail foi verificado em termos de vírus pelo software antivírus Avast.
https://www.avast.com/antivirus

______________________________________________
R-help@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.

Reply via email to