4
$\begingroup$

Im trying to plot reactome pathway in for of circular bar plot using ggplot2

my data

    dput(df2)
structure(list(ID = 1:10, Pathway_names = structure(c(5L, 1L, 
7L, 6L, 2L, 3L, 9L, 8L, 10L, 4L), .Label = c("Antigen Presentation: Folding assembly and peptide loading of class I MHC", 
"Antigen processing-Cross presentation", "Class I MHC mediated antigen processing & presentation", 
"Cytokine Signaling in Immune system", "Endosomal/Vacuolar pathway", 
"ER-Phagosome pathway", "Immunoregulatory interactions between a Lymphoid and a non-Lymphoid cell", 
"Interferon alpha/beta signaling", "Interferon gamma signaling", 
"Interferon Signaling"), class = "factor"), Entities_found = structure(c(1L, 
2L, 3L, 4L, 4L, 5L, 6L, 7L, 8L, 9L), .Label = c("51", "54", "55", 
"57", "75", "77", "96", "117", "176"), class = "factor"), Entities_pValue = c(1.11e-16, 
1.11e-16, 0.003908431, 2.54e-12, 2.77e-10, 0.0053068, 1.64e-13, 
1.11e-16, 1.11e-16, 3.68e-06)), row.names = c(NA, -10L), class = "data.frame")

my code

ggplot(df2, aes(x = factor(Pathway_names), y = Entities_found)) + ######################################
  geom_bar(aes(fill = Entities_pValue), stat = "identity", position = "stack") + 
  #scale_fill_manual(values = c(blank = "white", dark = "black")) + 
  coord_polar() + 
  theme_minimal() + 
  guides(fill = FALSE)

my output

So far im not sure how to include both p value and entities in the plot so that the pathway that are coming up can be labeled accordingly

New figure updated figure

$\endgroup$
  • $\begingroup$ I don't understand the issue. It looks fine to me. $\endgroup$ – fridaymeetssunday Dec 11 '18 at 7:18
  • 1
    $\begingroup$ What do you mean by entities: the third column of your df2? You already have the height for the entities and the color for the p-value. How is this plot not what you expected? $\endgroup$ – llrs Dec 11 '18 at 8:57
  • $\begingroup$ yes i tried different ways but this is what i end up with ,but can you suggest me a way to color it so that it can distinguish p value it color scale_manual ? $\endgroup$ – krushnach Chandra Dec 11 '18 at 9:39
  • $\begingroup$ @krushnachChandra Sorry I don't understand your question from the comments. You want to distinguish the p-value with the colors? Or do you want to set a manual scale of colors? If the question is the former, you can try to apply log10 to the variable to better distinguish the values. If the later case, I don't understand what is your problem with scale_manual $\endgroup$ – llrs Dec 11 '18 at 15:20
  • 1
    $\begingroup$ Can I suggest using acronyms for the entity names in the figure? Like ERPP for ER-Phagosome pathway? This way the text can be placed next to its barplot component and be readable. $\endgroup$ – conchoecia Dec 11 '18 at 17:49
3
$\begingroup$

The adjustcolor function from grDevices can be used to generate colours with transparency. What you want is colours based on the pathway and transparency to form a colour gradient for the p-value.

adjustcolor( "red", alpha.f = 0.2)

For the ggplot example, the aes function has an alpha parameter.

ggplot(df2, aes(x = factor(Pathway_names), y = Entities_found), alpha = Entities_pValue) + ######################################
geom_bar(aes(fill = Entities_found, alpha = Entities_pValue), stat = "identity", position = "stack") +  
coord_polar() + 
theme_minimal() + 
 guides(fill = FALSE)
$\endgroup$
  • $\begingroup$ it looks fine now may be i can tweak it a bit more i will see but i see my Entities_found are still 150 but highest one is 176 why am not getting till 176? $\endgroup$ – krushnach Chandra Dec 12 '18 at 6:23
  • $\begingroup$ i have a doubt the p value gradient still looks confusing ...can you help me regarding that $\endgroup$ – krushnach Chandra Dec 13 '18 at 7:01
  • 1
    $\begingroup$ Try plotting them on a log-scale? $\endgroup$ – Tom Kelly Dec 13 '18 at 7:39
  • $\begingroup$ no i haven;t given that thought may be that would help $\endgroup$ – krushnach Chandra Dec 13 '18 at 9:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.