Hello. I have been using maSigPro to analyze a RNA-seq time-course experiment with six time points and two different stimulatory conditions. Mostly the package is working well however I am having some issues with how the see.genes function (and by extension PlotGroups) plots the fit of the gene clusters. The plot produced provide only one point as a label on the x-axis and this point is not even part of the time series. For the time series see the below provided experimental design matrix:
Time Replicate Control Treatment
Th_0_A 0.0 1 1 0
Th_0_B 0.0 2 1 0
Th_0_C 0.0 3 1 0
Th_0.5_A 0.5 1 1 0
Th_0.5_B 0.5 2 1 0
Th_0.5_C 0.5 3 1 0
Th_1_A 1.0 1 1 0
Th_1_B 1.0 2 1 0
Th_1_C 1.0 3 1 0
Th_2_A 2.0 1 1 0
Th_2_B 2.0 2 1 0
Th_2_C 2.0 3 1 0
Th_6_A 6.0 1 1 0
Th_6_B 6.0 2 1 0
Th_6_C 6.0 3 1 0
Th_24_A 24.0 1 1 0
Th_24_B 24.0 2 1 0
Th_24_C 24.0 3 1 0
Th_P_0_A 0.0 1 0 1
Th_P_0_B 0.0 2 0 1
Th_P_0_C 0.0 3 0 1
Th_P_0.5_A 0.5 1 0 1
Th_P_0.5_B 0.5 2 0 1
Th_P_0.5_C 0.5 3 0 1
Th_P_1_A 1.0 1 0 1
Th_P_1_B 1.0 2 0 1
Th_P_1_C 1.0 3 0 1
Th_P_2_A 2.0 1 0 1
Th_P_2_B 2.0 2 0 1
Th_P_2_C 2.0 3 0 1
Th_P_6_A 6.0 1 0 1
Th_P_6_B 6.0 2 0 1
Th_P_6_C 6.0 3 0 1
Th_P_24_A 24.0 1 0 1
Th_P_24_B 24.0 2 0 1
Th_P_24_C 24.0 3 0 1
Some example Data:
Th_0_A Th_0_B Th_0_C Th_0.5_A Th_0.5_B Th_0.5_C Th_1_A Th_1_B
ENSG00000110514 20385 28618 27895 16344 14116 15943 14923 15888
ENSG00000086015 687 1018 1381 1246 1136 1500 886 782
ENSG00000211769 143 121 113 93 103 111 86 83
ENSG00000211768 128 101 80 64 115 100 87 77
ENSG00000211767 409 329 223 322 303 298 251 240
Th_1_C Th_2_A Th_2_B Th_2_C Th_6_A Th_6_B Th_6_C Th_24_A
ENSG00000110514 19358 14693 19189 24533 9979 8475 12050 11303
ENSG00000086015 1380 675 1076 632 854 942 2702 4938
ENSG00000211769 111 110 80 81 181 119 87 86
ENSG00000211768 82 91 70 102 106 92 54 61
ENSG00000211767 239 346 290 194 383 239 317 148
Th_24_B Th_24_C Th_P_0_A Th_P_0_B Th_P_0_C Th_P_0.5_A
ENSG00000110514 10297 11588 30203 30765 35418 34555
ENSG00000086015 4514 5198 3705 3589 4729 4786
ENSG00000211769 78 43 426 606 773 659
ENSG00000211768 36 39 284 409 505 432
ENSG00000211767 104 154 1035 898 1021 1031
Th_P_0.5_B Th_P_0.5_C Th_P_1_A Th_P_1_B Th_P_1_C Th_P_2_A
ENSG00000110514 30487 34200 27911 26272 31242 26780
ENSG00000086015 3524 4943 3271 3000 3826 3411
ENSG00000211769 698 771 529 567 665 607
ENSG00000211768 502 502 372 402 423 444
ENSG00000211767 993 1020 897 907 980 921
Th_P_2_B Th_P_2_C Th_P_6_A Th_P_6_B Th_P_6_C Th_P_24_A
ENSG00000110514 23565 27295 16264 17350 18774 17560
ENSG00000086015 2881 3521 4002 3947 4624 8497
ENSG00000211769 787 693 386 432 526 264
ENSG00000211768 531 522 265 253 269 170
ENSG00000211767 1095 1155 701 809 746 498
Th_P_24_B Th_P_24_C
ENSG00000110514 24385 17360
ENSG00000086015 8765 9009
ENSG00000211769 418 259
ENSG00000211768 229 101
ENSG00000211767 622 309
The plot command:
PlotGroups(data = data,
show.fit=TRUE,
dis=mdesign$dis,
groups.vector=mdesign$groups.vector,
edesign=edesign
)
To get the mdesign matrix do:
mdesign <- make.design.matrix(edesign, degree=5)
I wanted to add the produced plot but I can not figure out how to host it online. Anyway the produced plot only labels x at 5.83333333 and only plots the 24 hour time point. Why? Is there a way to make it plot all time points like it does in the tutorial example? Note that the data provided is not a real cluster however the plot produced has the same problem no matter the underlying data so the problem is most likely in the design matrix.
In case it is important I have the following packages loaded:
library(MASS)
library(maSigPro)
library(edgeR)
library(mclust)
library(ChIPseeker)
library(DOSE)
library(clusterProfiler)
library(ReactomePA)
library(RColorBrewer)
library(ggplot2)
library(ggfortify)
library(stats)
library(gplots)
library(TxDb.Hsapiens.UCSC.hg38.knownGene)
library(data.table)
library(OrganismDbi)
library(org.Hs.eg.db)
library(stringr)
Hi! I have run into exactly the same issue. The only timepoint is the average of all 6 time points and expression is only shown at one point. Did you ever figure this out? Cheers
Hi, I recently ran into the exact same problem, I'm wondering have you figured this out? Thank you.