HI Rui,
Thank you so much for getting back to me!
I did implement your idea (see attach):
ax.11.text <- element_text(size = 10)
ay.11.text <- element_text(size = 10)
p<-ggplot(data=toplot, aes(x=cat, y=props)) +
geom_bar(stat="identity",width=0.5, fill="steelblue")+
geom_errorbar(aes(ymin=props-1.96*ses, ymax=props+1.96*ses), width=.1,
position=position_dodge(.9)) +
geom_signif(comparisons=list( c("All eQTL", "eQTL from 103
genes"),
c("All SNPs", "eQTL from 103
genes")),
y_position=c(0.065, 0.07), tip_length=0, annotation=c("p
= 0.0012", "p = 0.0023")) +
scale_y_continuous(breaks=seq(0,.06,by=.01)) +
xlab("") + ylab("Proportion p-values < 0.05") +
theme_classic()+
theme(panel.grid.major.x = element_line(size = 0.1, color = "grey"),
panel.grid.major.y = element_blank(),
panel.grid.minor = element_blank(),axis.text.x
ax.11.text,axis.text.y=ay.11.text
)
p
I was wondering is there is any way to decrease the amount of white
spaces around the bars?
Thanks
Ana
On Wed, Jan 8, 2020 at 2:58 PM Rui Barradas <ruipbarradas at sapo.pt>
wrote:>
> Hello,
>
> Maybe
>
>
> theme(panel.grid.major.x = element_line(size = 0.1, color =
"grey"),
> panel.grid.major.y = element_blank(),
> panel.grid.minor = element_blank()
> )
>
>
>
> Note that if you remove the y axis grid you must set the x axis grid
> explicitly.
>
> Hope this helps,
>
> Rui Barradas
>
> ?s 18:52 de 08/01/20, Ana Marija escreveu:
> > Hello,
> >
> > I have this plot in attach. I was wondering how can I change my
> > plotting code in order to remove these gray horizontal background
> > lines but keep these two vertical lines? These two vertical lines
> > don't need to be gray, can be any other type of lines but they
must be
> > at the same place. Also how can I make these two bars narrower?
> >
> > library("ggplot2")
> > p<-ggplot(data=toplot, aes(x=cat, y=props)) +
> > geom_bar(stat="identity", fill="steelblue")+
> > geom_errorbar(aes(ymin=props-1.96*ses, ymax=props+1.96*ses),
width=.2,
> > position=position_dodge(.9)) +
> >
> > geom_signif(comparisons=list( c("All eQTL", "eQTL
from 103 genes"),
> > c("All SNPs", "eQTL
from 103 genes")),
> > y_position=c(0.065, 0.07), tip_length=0,
annotation=c("p
> > = 0.0012", "p = 0.0023")) +
> > scale_y_continuous(breaks=seq(0,.06,by=.01)) +
> > xlab("") + ylab("Proportion p-values <
0.05") +
> > theme_minimal()
> > p
> >
> >
> > ______________________________________________
> > 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.
> >
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Screen Shot 2020-01-09 at 10.38.42 AM.png
Type: image/png
Size: 123326 bytes
Desc: not available
URL:
<https://stat.ethz.ch/pipermail/r-help/attachments/20200109/bf069bd7/attachment.png>
HI Rui,
Thank you so much for getting back to me!
I did implement your idea (see attach):
ax.11.text <- element_text(size = 10)
ay.11.text <- element_text(size = 10)
p<-ggplot(data=toplot, aes(x=cat, y=props)) +
geom_bar(stat="identity",width=0.5, fill="steelblue")+
geom_errorbar(aes(ymin=props-1.96*ses, ymax=props+1.96*ses), width=.1,
position=position_dodge(.9)) +
geom_signif(comparisons=list( c("All eQTL", "eQTL from 103
genes"),
c("All SNPs", "eQTL from 103
genes")),
y_position=c(0.065, 0.07), tip_length=0, annotation=c("p
= 0.0012", "p = 0.0023")) +
scale_y_continuous(breaks=seq(0,.06,by=.01)) +
xlab("") + ylab("Proportion p-values < 0.05") +
theme_classic()+
theme(panel.grid.major.x = element_line(size = 0.1, color = "grey"),
panel.grid.major.y = element_blank(),
panel.grid.minor = element_blank(),axis.text.x
ax.11.text,axis.text.y=ay.11.text
)
p
I was wondering is there is any way to decrease the amount of white
spaces around the bars?
Thanks
Ana
On Thu, Jan 9, 2020 at 10:41 AM Ana Marija <sokovic.anamarija at
gmail.com> wrote:>
> HI Rui,
>
> Thank you so much for getting back to me!
> I did implement your idea (see attach):
>
> ax.11.text <- element_text(size = 10)
> ay.11.text <- element_text(size = 10)
> p<-ggplot(data=toplot, aes(x=cat, y=props)) +
> geom_bar(stat="identity",width=0.5,
fill="steelblue")+
> geom_errorbar(aes(ymin=props-1.96*ses, ymax=props+1.96*ses), width=.1,
> position=position_dodge(.9)) +
>
> geom_signif(comparisons=list( c("All eQTL", "eQTL from 103
genes"),
> c("All SNPs", "eQTL from 103
genes")),
> y_position=c(0.065, 0.07), tip_length=0, annotation=c("p
> = 0.0012", "p = 0.0023")) +
> scale_y_continuous(breaks=seq(0,.06,by=.01)) +
> xlab("") + ylab("Proportion p-values < 0.05") +
> theme_classic()+
> theme(panel.grid.major.x = element_line(size = 0.1, color =
"grey"),
> panel.grid.major.y = element_blank(),
> panel.grid.minor = element_blank(),axis.text.x >
ax.11.text,axis.text.y=ay.11.text
> )
> p
>
> I was wondering is there is any way to decrease the amount of white
> spaces around the bars?
>
> Thanks
> Ana
>
> On Wed, Jan 8, 2020 at 2:58 PM Rui Barradas <ruipbarradas at sapo.pt>
wrote:
> >
> > Hello,
> >
> > Maybe
> >
> >
> > theme(panel.grid.major.x = element_line(size = 0.1, color =
"grey"),
> > panel.grid.major.y = element_blank(),
> > panel.grid.minor = element_blank()
> > )
> >
> >
> >
> > Note that if you remove the y axis grid you must set the x axis grid
> > explicitly.
> >
> > Hope this helps,
> >
> > Rui Barradas
> >
> > ?s 18:52 de 08/01/20, Ana Marija escreveu:
> > > Hello,
> > >
> > > I have this plot in attach. I was wondering how can I change my
> > > plotting code in order to remove these gray horizontal background
> > > lines but keep these two vertical lines? These two vertical lines
> > > don't need to be gray, can be any other type of lines but
they must be
> > > at the same place. Also how can I make these two bars narrower?
> > >
> > > library("ggplot2")
> > > p<-ggplot(data=toplot, aes(x=cat, y=props)) +
> > > geom_bar(stat="identity",
fill="steelblue")+
> > > geom_errorbar(aes(ymin=props-1.96*ses, ymax=props+1.96*ses),
width=.2,
> > > position=position_dodge(.9)) +
> > >
> > > geom_signif(comparisons=list( c("All eQTL",
"eQTL from 103 genes"),
> > > c("All SNPs",
"eQTL from 103 genes")),
> > > y_position=c(0.065, 0.07), tip_length=0,
annotation=c("p
> > > = 0.0012", "p = 0.0023")) +
> > > scale_y_continuous(breaks=seq(0,.06,by=.01)) +
> > > xlab("") + ylab("Proportion p-values <
0.05") +
> > > theme_minimal()
> > > p
> > >
> > >
> > > ______________________________________________
> > > 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.
> > >
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Screen Shot 2020-01-09 at 10.42.17 AM.png
Type: image/png
Size: 67901 bytes
Desc: not available
URL:
<https://stat.ethz.ch/pipermail/r-help/attachments/20200109/3cf8b31d/attachment.png>
Hello,
There are ways of reducing the white space between the bars but they are
not obvious. Here are the two ways that I know.
First a data example.
library(ggplot2)
library(gridExtra)
df1 <- data.frame(x = LETTERS[1:5],
y = c(40, 15, 30, 15, 20))
1. The examples that follow set argument width in two places. What is
important is the relative magnitudes of width and position_dodge(width).
If width is bigger than position_dodge(width) then the bar sizes and the
space between them do not change. They only change if the second width
is bigger. In this case the first argument makes a difference. Run the
examples to see what I mean.
g1 <- ggplot(df1, aes(x, y)) +
geom_bar(stat = "identity",
width = 0.8,
position = position_dodge(width = 0.5))
g2 <- ggplot(df1, aes(x, y)) +
geom_bar(stat = "identity",
width = 0.8,
position = position_dodge(width = 0.25))
g3 <- ggplot(df1, aes(x, y)) +
geom_bar(stat = "identity",
width = 0.5,
position = position_dodge(width = 0.8))
g4 <- ggplot(df1, aes(x, y)) +
geom_bar(stat = "identity",
width = 0.25,
position = position_dodge(width = 0.8))
grid.arrange(g31, g2, g3, g4)
2. The other way is to shrink the plot by changing its aspect ratio.
g3 + theme(aspect.ratio = 2/1)
grid.arrange(g3, g3 + theme(aspect.ratio = 2/1), nrow = 1)
Run the examples and try to do something out of this.
Hope this helps,
Rui Barradas
?s 16:41 de 09/01/20, Ana Marija escreveu:> HI Rui,
>
> Thank you so much for getting back to me!
> I did implement your idea (see attach):
>
> ax.11.text <- element_text(size = 10)
> ay.11.text <- element_text(size = 10)
> p<-ggplot(data=toplot, aes(x=cat, y=props)) +
> geom_bar(stat="identity",width=0.5,
fill="steelblue")+
> geom_errorbar(aes(ymin=props-1.96*ses, ymax=props+1.96*ses), width=.1,
> position=position_dodge(.9)) +
>
> geom_signif(comparisons=list( c("All eQTL", "eQTL from
103 genes"),
> c("All SNPs", "eQTL from 103
genes")),
> y_position=c(0.065, 0.07), tip_length=0,
annotation=c("p
> = 0.0012", "p = 0.0023")) +
> scale_y_continuous(breaks=seq(0,.06,by=.01)) +
> xlab("") + ylab("Proportion p-values < 0.05") +
> theme_classic()+
> theme(panel.grid.major.x = element_line(size = 0.1, color =
"grey"),
> panel.grid.major.y = element_blank(),
> panel.grid.minor = element_blank(),axis.text.x >
ax.11.text,axis.text.y=ay.11.text
> )
> p
>
> I was wondering is there is any way to decrease the amount of white
> spaces around the bars?
>
> Thanks
> Ana
>
> On Wed, Jan 8, 2020 at 2:58 PM Rui Barradas <ruipbarradas at sapo.pt>
wrote:
>>
>> Hello,
>>
>> Maybe
>>
>>
>> theme(panel.grid.major.x = element_line(size = 0.1, color =
"grey"),
>> panel.grid.major.y = element_blank(),
>> panel.grid.minor = element_blank()
>> )
>>
>>
>>
>> Note that if you remove the y axis grid you must set the x axis grid
>> explicitly.
>>
>> Hope this helps,
>>
>> Rui Barradas
>>
>> ?s 18:52 de 08/01/20, Ana Marija escreveu:
>>> Hello,
>>>
>>> I have this plot in attach. I was wondering how can I change my
>>> plotting code in order to remove these gray horizontal background
>>> lines but keep these two vertical lines? These two vertical lines
>>> don't need to be gray, can be any other type of lines but they
must be
>>> at the same place. Also how can I make these two bars narrower?
>>>
>>> library("ggplot2")
>>> p<-ggplot(data=toplot, aes(x=cat, y=props)) +
>>> geom_bar(stat="identity",
fill="steelblue")+
>>> geom_errorbar(aes(ymin=props-1.96*ses, ymax=props+1.96*ses),
width=.2,
>>> position=position_dodge(.9)) +
>>>
>>> geom_signif(comparisons=list( c("All eQTL",
"eQTL from 103 genes"),
>>> c("All SNPs", "eQTL
from 103 genes")),
>>> y_position=c(0.065, 0.07), tip_length=0,
annotation=c("p
>>> = 0.0012", "p = 0.0023")) +
>>> scale_y_continuous(breaks=seq(0,.06,by=.01)) +
>>> xlab("") + ylab("Proportion p-values <
0.05") +
>>> theme_minimal()
>>> p
>>>
>>>
>>> ______________________________________________
>>> 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.
>>>