text annotation on Manhattn plot in qqman

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

text annotation on Manhattn plot in qqman

anikaM
Hello,

I am making manhattan plot with:
library(qqman)
manhattan(a, chr="CHR", bp="BP", snp="SNP", p="P",annotatePval = 0.0001)

and I would like to annotate these two SNPs which are above the
threshold so that they have GENE name beside them:

> a[a$SNP=="rs4081570",]
        SNP            P CHR       BP GENE
1 rs4081570 6.564447e-05  19 15918647 UCA1
> a[a$SNP=="rs11867934",]
            SNP            P CHR       BP GENE
1021 rs11867934 6.738066e-06  17 16933404 FLCN

Right now my plot only has SNP name for those 2, how to add GENE names
(FLCN and UCA1 as well)

Please advise
Ana

______________________________________________
[hidden email] 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.

Screen Shot 2020-05-19 at 11.11.43 AM.png (110K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: text annotation on Manhattn plot in qqman

Michael Dewey-3
Dear Ana

Perhaps paste together SNP and GENE using paste() and then supply that
as the snp parameter.

Michael

On 19/05/2020 17:12, Ana Marija wrote:

> Hello,
>
> I am making manhattan plot with:
> library(qqman)
> manhattan(a, chr="CHR", bp="BP", snp="SNP", p="P",annotatePval = 0.0001)
>
> and I would like to annotate these two SNPs which are above the
> threshold so that they have GENE name beside them:
>
>> a[a$SNP=="rs4081570",]
>          SNP            P CHR       BP GENE
> 1 rs4081570 6.564447e-05  19 15918647 UCA1
>> a[a$SNP=="rs11867934",]
>              SNP            P CHR       BP GENE
> 1021 rs11867934 6.738066e-06  17 16933404 FLCN
>
> Right now my plot only has SNP name for those 2, how to add GENE names
> (FLCN and UCA1 as well)
>
> Please advise
> Ana
>
>
>
> ______________________________________________
> [hidden email] 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.
>

--
Michael
http://www.dewey.myzen.co.uk/home.html

______________________________________________
[hidden email] 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 | Threaded
Open this post in threaded view
|

Re: text annotation on Manhattn plot in qqman

anikaM
Hi Michael,

can you please send me code how that would be done?

Thanks
Ana

On Tue, May 19, 2020 at 11:18 AM Michael Dewey <[hidden email]> wrote:

>
> Dear Ana
>
> Perhaps paste together SNP and GENE using paste() and then supply that
> as the snp parameter.
>
> Michael
>
> On 19/05/2020 17:12, Ana Marija wrote:
> > Hello,
> >
> > I am making manhattan plot with:
> > library(qqman)
> > manhattan(a, chr="CHR", bp="BP", snp="SNP", p="P",annotatePval = 0.0001)
> >
> > and I would like to annotate these two SNPs which are above the
> > threshold so that they have GENE name beside them:
> >
> >> a[a$SNP=="rs4081570",]
> >          SNP            P CHR       BP GENE
> > 1 rs4081570 6.564447e-05  19 15918647 UCA1
> >> a[a$SNP=="rs11867934",]
> >              SNP            P CHR       BP GENE
> > 1021 rs11867934 6.738066e-06  17 16933404 FLCN
> >
> > Right now my plot only has SNP name for those 2, how to add GENE names
> > (FLCN and UCA1 as well)
> >
> > Please advise
> > Ana
> >
> >
> >
> > ______________________________________________
> > [hidden email] 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.
> >
>
> --
> Michael
> http://www.dewey.myzen.co.uk/home.html

______________________________________________
[hidden email] 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 | Threaded
Open this post in threaded view
|

Re: text annotation on Manhattn plot in qqman

Michael Dewey-3
a$newname <- paste(a$SNP, a$GENE)
manhattan(a, chr="CHR", bp="BP", snp="newname", p="P",annotatePval = 0.0001)

However note that I do not use manhattan() so you may need to alter the
parameters as I am assuming a is where it finds the remaining parameters.

You may also need to play with the sep =, and collapse = parameters to
paste() to get the precise layout you want.

Michael

On 19/05/2020 17:21, Ana Marija wrote:

> Hi Michael,
>
> can you please send me code how that would be done?
>
> Thanks
> Ana
>
> On Tue, May 19, 2020 at 11:18 AM Michael Dewey <[hidden email]> wrote:
>>
>> Dear Ana
>>
>> Perhaps paste together SNP and GENE using paste() and then supply that
>> as the snp parameter.
>>
>> Michael
>>
>> On 19/05/2020 17:12, Ana Marija wrote:
>>> Hello,
>>>
>>> I am making manhattan plot with:
>>> library(qqman)
>>> manhattan(a, chr="CHR", bp="BP", snp="SNP", p="P",annotatePval = 0.0001)
>>>
>>> and I would like to annotate these two SNPs which are above the
>>> threshold so that they have GENE name beside them:
>>>
>>>> a[a$SNP=="rs4081570",]
>>>           SNP            P CHR       BP GENE
>>> 1 rs4081570 6.564447e-05  19 15918647 UCA1
>>>> a[a$SNP=="rs11867934",]
>>>               SNP            P CHR       BP GENE
>>> 1021 rs11867934 6.738066e-06  17 16933404 FLCN
>>>
>>> Right now my plot only has SNP name for those 2, how to add GENE names
>>> (FLCN and UCA1 as well)
>>>
>>> Please advise
>>> Ana
>>>
>>>
>>>
>>> ______________________________________________
>>> [hidden email] 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.
>>>
>>
>> --
>> Michael
>> http://www.dewey.myzen.co.uk/home.html
>

--
Michael
http://www.dewey.myzen.co.uk/home.html

______________________________________________
[hidden email] 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 | Threaded
Open this post in threaded view
|

Re: text annotation on Manhattn plot in qqman

anikaM
HI Michael,

Thank you so much!
That worked!!! Now I am just trying to increase the size of text of
SNP and GENE on plot

I tried this:

a$newname <- paste(a$SNP,"\n", a$GENE)
manhattan(a, chr="CHR", bp="BP", snp="newname", p="P",cex =
0.5,annotatePval = 0.0001)

but I am getting this error:

Error in textxy(topSNPs$pos, -log10(topSNPs$P), offset = 0.625, labs =
topSNPs$SNP,  :
  formal argument "cex" matched by multiple actual arguments

Do you by any chance know how to do this?

Cheers
Ana

On Wed, May 20, 2020 at 4:12 AM Michael Dewey <[hidden email]> wrote:

>
> a$newname <- paste(a$SNP, a$GENE)
> manhattan(a, chr="CHR", bp="BP", snp="newname", p="P",annotatePval = 0.0001)
>
> However note that I do not use manhattan() so you may need to alter the
> parameters as I am assuming a is where it finds the remaining parameters.
>
> You may also need to play with the sep =, and collapse = parameters to
> paste() to get the precise layout you want.
>
> Michael
>
> On 19/05/2020 17:21, Ana Marija wrote:
> > Hi Michael,
> >
> > can you please send me code how that would be done?
> >
> > Thanks
> > Ana
> >
> > On Tue, May 19, 2020 at 11:18 AM Michael Dewey <[hidden email]> wrote:
> >>
> >> Dear Ana
> >>
> >> Perhaps paste together SNP and GENE using paste() and then supply that
> >> as the snp parameter.
> >>
> >> Michael
> >>
> >> On 19/05/2020 17:12, Ana Marija wrote:
> >>> Hello,
> >>>
> >>> I am making manhattan plot with:
> >>> library(qqman)
> >>> manhattan(a, chr="CHR", bp="BP", snp="SNP", p="P",annotatePval = 0.0001)
> >>>
> >>> and I would like to annotate these two SNPs which are above the
> >>> threshold so that they have GENE name beside them:
> >>>
> >>>> a[a$SNP=="rs4081570",]
> >>>           SNP            P CHR       BP GENE
> >>> 1 rs4081570 6.564447e-05  19 15918647 UCA1
> >>>> a[a$SNP=="rs11867934",]
> >>>               SNP            P CHR       BP GENE
> >>> 1021 rs11867934 6.738066e-06  17 16933404 FLCN
> >>>
> >>> Right now my plot only has SNP name for those 2, how to add GENE names
> >>> (FLCN and UCA1 as well)
> >>>
> >>> Please advise
> >>> Ana
> >>>
> >>>
> >>>
> >>> ______________________________________________
> >>> [hidden email] 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.
> >>>
> >>
> >> --
> >> Michael
> >> http://www.dewey.myzen.co.uk/home.html
> >
>
> --
> Michael
> http://www.dewey.myzen.co.uk/home.html

______________________________________________
[hidden email] 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 | Threaded
Open this post in threaded view
|

Re: text annotation on Manhattn plot in qqman

Michael Dewey-3
Dear Ana

That looks like something is hard coded in manhattan(). The simplest
thing might be to contact the maintainer of the package and ask. You can
make a copy of manhattan or textxy and modify them but I think the
maintainer is the simplest course of action.

Michael

On 20/05/2020 16:10, Ana Marija wrote:

> HI Michael,
>
> Thank you so much!
> That worked!!! Now I am just trying to increase the size of text of
> SNP and GENE on plot
>
> I tried this:
>
> a$newname <- paste(a$SNP,"\n", a$GENE)
> manhattan(a, chr="CHR", bp="BP", snp="newname", p="P",cex =
> 0.5,annotatePval = 0.0001)
>
> but I am getting this error:
>
> Error in textxy(topSNPs$pos, -log10(topSNPs$P), offset = 0.625, labs =
> topSNPs$SNP,  :
>    formal argument "cex" matched by multiple actual arguments
>
> Do you by any chance know how to do this?
>
> Cheers
> Ana
>
> On Wed, May 20, 2020 at 4:12 AM Michael Dewey <[hidden email]> wrote:
>>
>> a$newname <- paste(a$SNP, a$GENE)
>> manhattan(a, chr="CHR", bp="BP", snp="newname", p="P",annotatePval = 0.0001)
>>
>> However note that I do not use manhattan() so you may need to alter the
>> parameters as I am assuming a is where it finds the remaining parameters.
>>
>> You may also need to play with the sep =, and collapse = parameters to
>> paste() to get the precise layout you want.
>>
>> Michael
>>
>> On 19/05/2020 17:21, Ana Marija wrote:
>>> Hi Michael,
>>>
>>> can you please send me code how that would be done?
>>>
>>> Thanks
>>> Ana
>>>
>>> On Tue, May 19, 2020 at 11:18 AM Michael Dewey <[hidden email]> wrote:
>>>>
>>>> Dear Ana
>>>>
>>>> Perhaps paste together SNP and GENE using paste() and then supply that
>>>> as the snp parameter.
>>>>
>>>> Michael
>>>>
>>>> On 19/05/2020 17:12, Ana Marija wrote:
>>>>> Hello,
>>>>>
>>>>> I am making manhattan plot with:
>>>>> library(qqman)
>>>>> manhattan(a, chr="CHR", bp="BP", snp="SNP", p="P",annotatePval = 0.0001)
>>>>>
>>>>> and I would like to annotate these two SNPs which are above the
>>>>> threshold so that they have GENE name beside them:
>>>>>
>>>>>> a[a$SNP=="rs4081570",]
>>>>>            SNP            P CHR       BP GENE
>>>>> 1 rs4081570 6.564447e-05  19 15918647 UCA1
>>>>>> a[a$SNP=="rs11867934",]
>>>>>                SNP            P CHR       BP GENE
>>>>> 1021 rs11867934 6.738066e-06  17 16933404 FLCN
>>>>>
>>>>> Right now my plot only has SNP name for those 2, how to add GENE names
>>>>> (FLCN and UCA1 as well)
>>>>>
>>>>> Please advise
>>>>> Ana
>>>>>
>>>>>
>>>>>
>>>>> ______________________________________________
>>>>> [hidden email] 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.
>>>>>
>>>>
>>>> --
>>>> Michael
>>>> http://www.dewey.myzen.co.uk/home.html
>>>
>>
>> --
>> Michael
>> http://www.dewey.myzen.co.uk/home.html
>

--
Michael
http://www.dewey.myzen.co.uk/home.html

______________________________________________
[hidden email] 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 | Threaded
Open this post in threaded view
|

Re: [FORGED] Re: text annotation on Manhattn plot in qqman

Paul Murrell-2
In reply to this post by anikaM
Hi

Something like this might do what you want ...


## From example(manhattan)
manhattan(gwasResults, annotatePval = 0.0001)

library(gridGraphics)
grid.echo()
## grid.ls()
## The annotations have "text" in their name
labels <- grid.grep("text", grep=TRUE)
grid.edit(labels, gp=gpar(cex=1))


Hope that helps

Paul

On 21/05/20 3:10 am, Ana Marija wrote:

> HI Michael,
>
> Thank you so much!
> That worked!!! Now I am just trying to increase the size of text of
> SNP and GENE on plot
>
> I tried this:
>
> a$newname <- paste(a$SNP,"\n", a$GENE)
> manhattan(a, chr="CHR", bp="BP", snp="newname", p="P",cex =
> 0.5,annotatePval = 0.0001)
>
> but I am getting this error:
>
> Error in textxy(topSNPs$pos, -log10(topSNPs$P), offset = 0.625, labs =
> topSNPs$SNP,  :
>    formal argument "cex" matched by multiple actual arguments
>
> Do you by any chance know how to do this?
>
> Cheers
> Ana
>
> On Wed, May 20, 2020 at 4:12 AM Michael Dewey <[hidden email]> wrote:
>>
>> a$newname <- paste(a$SNP, a$GENE)
>> manhattan(a, chr="CHR", bp="BP", snp="newname", p="P",annotatePval = 0.0001)
>>
>> However note that I do not use manhattan() so you may need to alter the
>> parameters as I am assuming a is where it finds the remaining parameters.
>>
>> You may also need to play with the sep =, and collapse = parameters to
>> paste() to get the precise layout you want.
>>
>> Michael
>>
>> On 19/05/2020 17:21, Ana Marija wrote:
>>> Hi Michael,
>>>
>>> can you please send me code how that would be done?
>>>
>>> Thanks
>>> Ana
>>>
>>> On Tue, May 19, 2020 at 11:18 AM Michael Dewey <[hidden email]> wrote:
>>>>
>>>> Dear Ana
>>>>
>>>> Perhaps paste together SNP and GENE using paste() and then supply that
>>>> as the snp parameter.
>>>>
>>>> Michael
>>>>
>>>> On 19/05/2020 17:12, Ana Marija wrote:
>>>>> Hello,
>>>>>
>>>>> I am making manhattan plot with:
>>>>> library(qqman)
>>>>> manhattan(a, chr="CHR", bp="BP", snp="SNP", p="P",annotatePval = 0.0001)
>>>>>
>>>>> and I would like to annotate these two SNPs which are above the
>>>>> threshold so that they have GENE name beside them:
>>>>>
>>>>>> a[a$SNP=="rs4081570",]
>>>>>            SNP            P CHR       BP GENE
>>>>> 1 rs4081570 6.564447e-05  19 15918647 UCA1
>>>>>> a[a$SNP=="rs11867934",]
>>>>>                SNP            P CHR       BP GENE
>>>>> 1021 rs11867934 6.738066e-06  17 16933404 FLCN
>>>>>
>>>>> Right now my plot only has SNP name for those 2, how to add GENE names
>>>>> (FLCN and UCA1 as well)
>>>>>
>>>>> Please advise
>>>>> Ana
>>>>>
>>>>>
>>>>>
>>>>> ______________________________________________
>>>>> [hidden email] 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.
>>>>>
>>>>
>>>> --
>>>> Michael
>>>> http://www.dewey.myzen.co.uk/home.html
>>>
>>
>> --
>> Michael
>> http://www.dewey.myzen.co.uk/home.html
>
> ______________________________________________
> [hidden email] 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.
>

--
Dr Paul Murrell
Department of Statistics
The University of Auckland
Private Bag 92019
Auckland
New Zealand
64 9 3737599 x85392
[hidden email]
http://www.stat.auckland.ac.nz/~paul/

______________________________________________
[hidden email] 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.