Using this list as a labor pool to procure code for generating publication-quality plots is abuse. Please read the Posting Guide and the documentation for the ggplot package or go pay someone offlist for their services.
On September 20, 2019 4:15:18 AM PDT, Moshiur Rahman <mrahmankuf...@gmail.com> wrote: >Thanks a lot Rishi for your very cordial effort and great help. But >still I >need some help to improve it as the plot doesn't clearly depict which >female belongs to which family and this can be detected by drawing a >line >from 1-4 for F1, 5-8 for F2.... > >Another problem I can see that the position of MID (P1,2,3...) is not >looking well which are somehow noisy. > >Finally, can we drop the bars at the bottom of x-axis that I did >with scale_y_continuous? > >Please do me some favour to complete this plot which I need for a >publication. > >With kind regards, > >Moshi > >On Fri, Sep 20, 2019 at 7:45 PM ঋষি ( ऋषि / rIsHi ) ><rishi.das...@gmail.com> >wrote: > >> Here is the solution inspired by this post >> >https://stackoverflow.com/questions/18165863/multirow-axis-labels-with-nested-grouping-variables >> >> >> > data$Female <- factor(data$Female, levels = >> c("F1","F2","F3","F4","F5","F6","F7","F8","F9","F10")) >> > >> >ggplot(data,aes(x=family,y=offs.surv.perct,fill=treat))+geom_bar(stat="identity", >> position="dodge")+ >> geom_text(aes(label = MID), angle=90)+ >> facet_wrap(~Female, strip.position = "bottom", scales = >"free_x",nrow=1)+ >> theme(panel.spacing = unit(0, "lines"), >> strip.background = element_blank(), >> strip.placement = "outside") >> >> >> On Fri, Sep 20, 2019 at 11:51 AM Moshiur Rahman ><mrahmankuf...@gmail.com> >> wrote: >> >>> Thanks Rishi, >>> >>> Please find attached the data herewith. >>> >>> >>> >>> On Fri, Sep 20, 2019 at 5:48 PM ঋষি ( ऋषि / rIsHi ) < >>> rishi.das...@gmail.com> wrote: >>> >>>> There are no attached data . >>>> >>>> On Fri, Sep 20, 2019 at 11:40 AM Moshiur Rahman ><mrahmankuf...@gmail.com> >>>> wrote: >>>> >>>>> Dear ggplot2 experts, >>>>> >>>>> I'm struggling to make a plot having family id in x-axis and >female id >>>>> below that family id where each 4 families have a single female >id. >>>>> >>>>> I also need to add male id on top of each bar which I can do >before >>>>> grid.arrange, but fail after doing it. So, any suggestions? >>>>> >>>>> Please find below my codes and help me to complete it perfectly. >>>>> #data >>>>> data <- read.table("R-help_ggplot2.csv", header=TRUE, sep=",") >>>>> names(data) >>>>> #packages >>>>> library(ggplot2) >>>>> library(grid) >>>>> library(gridExtra) >>>>> library(scales) >>>>> library(ggpubr) >>>>> #plot codes >>>>> p1 = >>>>> >ggplot(data,aes(x=factor(family),y=offs.surv.perct,fill=factor(treat)))+ >>>>> geom_bar(stat="identity", position="dodge")+ >>>>> #facet_wrap(~ Female)+ >>>>> geom_bar(stat="identity", position="dodge", colour="black", >>>>> show.legend= TRUE) + # show_guide = TRUE gives legend boarder >>>>> #geom_hline(yintercept=15, size=0.5, linetype = 2)+ ### middle >line >>>>> scale_fill_manual(values=c("grey", "white")) + # grey80 is >closer to >>>>> white than black >>>>> xlab("Family") + >>>>> ylab (expression(paste("Offspring survival rate (%)"))) + >>>>> #coord_cartesian(xlim=c(0,40), ylim=c(0,60), clip="off")+ >>>>> scale_y_continuous(expand = c(0, 0), limits = c(0, 60))+ >>>>> theme(legend.title = element_text(colour="black", size=12))+ >>>>> theme(legend.text = element_text(colour="black", size=11))+ >>>>> theme(legend.background = element_blank())+ >>>>> theme(legend.key = element_blank())+ >>>>> theme(legend.box.background = element_blank())+ >>>>> theme(legend.key.size = unit(2, "mm"),legend.key.width = >>>>> unit(0.5,"cm"))+ >>>>> theme(legend.position=c(0.05,0.9),legend.direction >>>>> ="vertical",legend.box = "vertical")+ # add legend on top >>>>> theme(panel.background = element_rect(fill = "transparent"))+ >>>>> theme(axis.line = element_line(colour = >>>>> "black"),axis.text.x=element_text(size=10, >>>>> colour="black"),axis.text.y=element_text(size=10, colour="black"), >>>>> axis.title.y = element_text(size=12, colour = >>>>> "black",margin=margin(0,5,0,0)), >>>>> axis.title.x = element_blank(), >>>>> strip.text.x = element_blank(),# remove top level title >(high >>>>> and >>>>> low) >>>>> strip.background = element_blank(),# remove top level >background >>>>> panel.grid.major = element_blank(),# remove grid line >within the >>>>> plot >>>>> panel.grid.minor = element_blank(), >>>>> panel.border = element_blank()) >>>>> p1 >>>>> >>>>> ### legend correction >>>>> p2<- p1 + guides(fill = guide_legend(title="Fertilization >>>>> group",keywidth = >>>>> 1,keyheight = 1, >>>>> title.theme = element_text(size=12, >colour >>>>> = >>>>> "black", angle = 0)))+ >>>>> theme(legend.text = element_text(size = 12, colour = "black", >angle = >>>>> 0)) >>>>> >>>>> p2 >>>>> >>>>> ###plot margins >>>>> p3<-p2+theme(plot.margin = unit(c(1,1,1.7,1), "lines")) >>>>> p3 >>>>> >>>>> #x-axis label >>>>> p4<-grid.arrange( >>>>> p3, >>>>> bottom = textGrob( >>>>> "Family and female number", >>>>> gp = gpar(fontsize = 12, cex=1), #fontface = "bold", >>>>> vjust = 0.5, hjust = 0.5,x = 0.52)) >>>>> >>>>> # annotation (NOT WORKING) >>>>> p5<-p4+annotate("text", label = "M1", x = 1, y = 25.03, fontface = >1, >>>>> size=3,angle = 90) >>>>> p5 >>>>> p6<-p5+annotate("text", label = "M2", x = 2, y = 18.37, fontface = >1, >>>>> size=3,angle = 90) >>>>> p6 >>>>> p7<-p6+annotate("text", label = "M3", x = 3, y = 21.7, fontface = >1, >>>>> size=3,angle = 90) >>>>> p7 >>>>> p8<-p7+annotate("text", label = "M1-2-3", x = 4, y = 19.1, >fontface= 1, >>>>> size=3,angle = 90) >>>>> p8 >>>>> Fig1.1<-p8+annotate("segment", size=0.3, x=c(1,1,4),xend=c(1,4,4), >>>>> y= c(26,28,28), yend=c(28,28,21))+ >>>>> annotate("text",x=2.45,y=29.5,fontface = 1, size=3,angle = >>>>> 90,label=c("F1")) >>>>> >>>>> Fig1.1 >>>>> >>>>> Please find attached also my data. >>>>> >>>>> Any assistance will be highly appreciated. >>>>> >>>>> Regards, >>>>> >>>>> Moshi >>>>> >>>>> >>>>> JSPS Postdoctoral Fellow >>>>> Laboratory of Population Biology >>>>> Department of Marine Biosciences >>>>> Graduate School of Marine Science and Technology >>>>> Tokyo University of Marine Science and Technology >>>>> 4-5-7 Konan, Minato-ku, Tokyo 108-8477, Japan >>>>> Mobile: 050-6874-9072 >>>>> ______________________________________________ >>>>> 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. >>>>> >>>> >>>> >>>> -- >>>> >>>> >>>> >>>> With regards >>>> Rishi Das Roy >>>> >>> >>> >>> -- >>> Md. Moshiur Rahman, PhD >>> >>> JSPS Postdoctoral Fellow >>> Laboratory of Population Biology >>> Department of Marine Biosciences >>> Graduate School of Marine Science and Technology >>> Tokyo University of Marine Science and Technology >>> 4-5-7 Konan, Minato-ku, Tokyo 108-8477, Japan >>> Mobile: 050-6874-9072 >>> >>> ......................... >>> >>> Professor >>> Fisheries and Marine Resource Technology Discipline >>> Khulna University, Khulna - 9208 >>> BANGLADESH. >>> Google scholar: >>> https://scholar.google.com.au/citations?user=uElrJSsAAAAJ&hl=en >>> ResearchGate: >https://www.researchgate.net/profile/Md_Moshiur_Rahman2 >>> ORCID: https://orcid.org/my-orcid >>> >> >> >> -- >> >> >> >> With regards >> Rishi Das Roy >> -- Sent from my phone. Please excuse my brevity. ______________________________________________ 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.