Issue with pls-da plotIndiv explained label

Issue #169 new
Óscar Brochado created an issue

Dear mixOmics developer, we are working with your R package but I am having problems to plot my pls-da with the explained variance percentage.

When we use the plotIndiv function, the plot appear only with an “X” and “Y” on the axis labels. We tried to use the X.label and Y.label parameteres but it does not work (there is neither any warning or error message).

Here is the code we use:

X_autoscaled1<-read.table("datos autoescalados marcadores.txt",header=TRUE,sep="\t")

Y<-as.factor(c((rep("HC",15)),(rep("HIV",22))))

biomarkers.plsda <- plsda(X_autoscaled1, Y, ncomp = 10,scale=FALSE)

plotIndiv(biomarkers.plsda , comp = 1:2,
group = Y, ind.names = FALSE,ellipse = TRUE, legend = TRUE, title = 'PLSDA on biomarkers')

We also checked that “biomarkers.plsda$explained.variance” has values attached.

We will be very gratefull to you if you could solve our issue.

Thanks in advance.

Óscar Brochado kith.

Comments (2)

  1. Al J Abadi

    Hi Oscar, sorry we’re getting back to you now as we had not realised we have not updated our issues page on Bioconductor (we’re now on GitHub and discussions are on Discourse).

    I did not see X.label and Y.label argument in your provided code. However, when I run the following I see my axis label names in the second plot. Can you also install BiocManager and try and see if it work for you too (please restart R where indicated in the code):

    if (!requireNamespace("BiocManager", quietly = TRUE))
        install.packages("BiocManager")
    BiocManager::install(mixOmics)
    ############## restart R ##############
    library(mixOmics)
    
    data(breast.tumors)
    X_autoscaled1 <- breast.tumors$gene.exp
    Y <- breast.tumors$sample$treatment
    
    plsda.breast <- plsda(X_autoscaled1, Y, ncomp = 2)
    plotIndiv(plsda.breast, ind.names = TRUE, ellipse = TRUE, legend = TRUE)
    
    plotIndiv(plsda.breast, ind.names = TRUE, ellipse = TRUE, legend = TRUE, 
              X.label = 'my x axis label', 
              Y.label = 'my y axis label')
    
  2. Log in to comment