-
Notifications
You must be signed in to change notification settings - Fork 67
Description
Copied from: https://mixomics-users.discourse.group/t/diablo-circos-wont-plot-with-only-1-y-variable/1645
🐞 Describe the bug:
I have two datasets, X = RNASeq data and Y = functional data (numerical), and two groups Z = sample info (CON vs. Condition).
I tuned the model (n perm > 1000) and it keeps spitting out 1 component which has 1 Y variable and 80 genes. I can’t seem to plot a circos plot with only 1 Y variable. The error message is:
🔍 reprex results from reproducible example including sessioninfo():
X11(width=10, height = 15)
circosPlot(final.diablo.model, cutoff = 0.5, line = TRUE,
comp = 1:min(final.diablo.model$ncomp),
color.Y= c(‘#000000’,‘grey’),
color.blocks= c(‘purple’, ‘pink’),
color.cor = c(“blue”,“red”), size.labels = 1,
linkWidth= 3,
size.variables = 0.1 ,
showIntraLinks= FALSE,
var.adj = -1)
Error in do.call(cbind, X)[, colnames(simMat)] : subscript out of bounds
Also, when I ask the model to include more than 1 Y variable, it fits 2 Y variables with the same amount of genes, and then I can plot the circos, it works.
🤔 Expected behavior:
If only 1 Y variable is relevant biologically, just plot that in circos plot
💡 Possible solution:
Kim-Anh said:
It’s hard to tell what might be the issue. Maybe your 1 Y variable is not passing the cutoff threshold?
You could also (as you did) decide on selecting more than 1 Y variable (especially if this is relevant for you, biologically)
Reply:
All the correlations are super high >0.9. Even if I try to plot with a 0.5 cutoff, it doesn’t work.
I did tune the model to include a second Y variable and the circos plot works. I guess that’s what I will do for now! I was just wondering because the second Y variable is less “strong” in terms of the correlations to X genes, so ideally I would only include the first variable. No worries though.
K-A:
Ok I’ll add this on our todo list (might be fixed Oct - Nov)