DEseq2 result file figure between Genus and log2fold change
1
0
Entering edit mode
3.5 years ago
Bioinfonext ▴ 460

Hello

Could you please suggest how I can get dotplot figure like attached from deseq2 result file; My deseq2 result file looks like this;

I wanted to show Genus names on Y-axis and log2Foldchange on the X-axis and I am also wanted to show dot colour based on phylum name.

         log2FoldChange padj    Kingdom           Phylum    Genus
OTU1    0.214360038 0.369800256 Bacteria    Proteobacteria  Burkholderiaceae
OTU2    0.104133836 0.611791812 Bacteria    Proteobacteria  Xanthobacteraceae
OTU3    0.911214638 8.33E-08    Bacteria    Proteobacteria  Archangiaceae
OTU4    1.162701206 4.80E-08    Bacteria    Proteobacteria  Geobacteraceae
OTU5   -2.439651618 1.62E-08    Bacteria    Actinobacteria  Microbacteriaceae

dotplot

R Bioconducter • 945 views
ADD COMMENT
3
Entering edit mode
3.5 years ago

Example data.

df <- structure(list(log2FoldChange = c(0.214360038, 0.104133836, 0.911214638,
1.162701206, -2.439651618), padj = c(0.369800256, 0.611791812,
8.33e-08, 4.8e-08, 1.62e-08), Kingdom = c("Bacteria", "Bacteria",
"Bacteria", "Bacteria", "Bacteria"), Phylum = c("Proteobacteria",
"Proteobacteria", "Proteobacteria", "Proteobacteria", "Actinobacteria"
), Genus = c("Burkholderiaceae", "Xanthobacteraceae", "Archangiaceae",
"Geobacteraceae", "Microbacteriaceae")), class = "data.frame", row.names = c("OTU1",
"OTU2", "OTU3", "OTU4", "OTU5"))

ggplot2 solution.

library("forcats")
library("ggplot2")

df %>%
  mutate(Genus=fct_reorder(Genus, log2FoldChange)) %>%
  ggplot(aes(x=log2FoldChange, y=Genus)) +
    geom_vline(xintercept=0) +
    geom_point(aes(color=Phylum), size=5)

enter image description here

ADD COMMENT

Login before adding your answer.

Traffic: 2580 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6