DIABLO - Circos won't plot with only 1 Y variable

Hello,

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:

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

Is there anyway to circos plot only 1 Y variable?

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.

Thanks for the help in advance!

dim(X)
[1] 12 15468
dim(Y)
[1] 12 15
dim(Z)
[1] 12 2

hi @Fossil

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) .

If this remain an issue, we could look into what could be the bug, but that would be in 2 months when we have a new maintainer of the software starting.

Kim-Anh

Thanks a lot for your 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 :slight_smile: 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.

hi @Fossil,

Ok I’ll add this on our todo list (might be fixed Oct - Nov)

Kim-Anh