circosPlot {mixOmics} | R Documentation

## circosPlot for DIABLO

### Description

Displays variable correlation among different blocks

### Usage

    circosPlot(
      object,
      comp = 1:min(object$ncomp),
      cutoff,
      color.Y,
      color.blocks,
      color.cor,
      var.names = NULL,
      showIntraLinks = FALSE,
      line = FALSE,
      size.legend = 0.8,
      ncol.legend = 1,
      size.variables = 0.25,
      size.labels = 1,
      legend = TRUE,
      linkWidth = 1,
      ...
    )

### Arguments

`object` | An object of class inheriting from `"block.splsda"`.
`comp` | Numeric vector indicating which component to plot. Default to all
`cutoff` | Only shows links with a correlation higher than `cutoff`
`color.Y` | a character vector of colors to be used for the levels of the outcome
`color.blocks` | a character vector of colors to be used for the blocks
`color.cor` | a character vector of two colors. First one is for the negative correlation, second one is for the positive correlation
`var.names` | Optional parameter. A list of length the number of blocks in `object$X`, containing the names of the variables of each block. If `NULL`, the colnames of the data matrix are used.
`showIntraLinks` | if TRUE, shows the correlation higher than the threshold inside each block.
`line` | if TRUE, shows the overall expression of the selected variables. see examples.
`size.legend` | size of the legend
`ncol.legend` | number of columns for the legend
`size.variables` | size of the variable labels
`size.labels` | size of the block labels
`legend` | Logical. Whether the legend should be added. Default is TRUE.
`linkWidth` | Numeric. Specifies the range of sizes used for lines linking the correlated variables (see details). Must be of length 2 or 1. Default to c(1). See details.
`...` | Advanced plot parameters: var.adj Numeric. Adjusts the radial location of variable names in units of the arc band width. Positive values push feature names radially outward. Default to -0.33. block.labels.adj Numeric between -1 and 1. Adjusts the radial location of block names radially inward or outward. Default to 0.

### Details

`circosPlot` function depicts correlations of variables selected with `block.splsda` among different blocks, using a generalisation of the method presented in González et al 2012. If `ncomp` is specified, then only the variables selected on that component are displayed.

The `linkWidth` argument specifies the width of the links drawn. If a vector of length 2 is provided, the smaller value will correspond to a similarity values designated by `cutoff` argument, while the larger value will be used for a link with perfect similarity (1), if any.

### Value

If saved in an object, the circos plot will output the similarity matrix and the names of the variables displayed on the plot (see `attributes(object)`).

### Author(s)

Michael Vacher, Amrit Singh, Florian Rohart, Kim-Anh Lê Cao, Al J Abadi

### References

Singh A., Gautier B., Shannon C., Vacher M., Rohart F., Tebbutt S. and Lê Cao K.A. (2016). DIABLO: multi omics integration for biomarker discovery. BioRxiv available here: http://biorxiv.org/content/early/2016/08/03/067611

mixOmics article:

Rohart F, Gautier B, Singh A, Lê Cao K-A. mixOmics: an R package for 'omics feature selection and multiple data integration. PLoS Comput Biol 13(11): e1005752

González I., Lê Cao K.A., Davis M.J., Déjean S. (2012). Visualising associations between paired 'omics' data sets. BioData Mining; 5(1).

### See Also

`block.splsda`, references and http://www.mixOmics.org/mixDIABLO for more details.

### Examples

    data(nutrimouse)
    Y = nutrimouse$diet
    data = list(gene = nutrimouse$gene, lipid = nutrimouse$lipid)
    design = matrix(c(0,1,1,1,0,1,1,1,0), ncol = 3, nrow = 3, byrow = TRUE)

    nutrimouse.sgccda <- wrapper.sgccda(X=data,
    Y = Y,
    design = design,
    keepX = list(gene=c(10,10), lipid=c(15,15)),
    ncomp = 2,
    scheme = "horst")

    circosPlot(nutrimouse.sgccda, cutoff = 0.7)
    ## links widths based on strength of their similarity
    circosPlot(nutrimouse.sgccda, cutoff = 0.7, linkWidth = c(1, 10))
    ## custom legend
    circosPlot(nutrimouse.sgccda, cutoff = 0.7, size.legend = 1.1)

    ## Not run:
    ## more customisation
    circosPlot(nutrimouse.sgccda, cutoff = 0.7, size.legend = 1.1, color.Y = 1:5,
               color.blocks = c("green","brown"), color.cor = c("magenta", "purple"))

    par(mfrow=c(2,2))

    circosPlot(nutrimouse.sgccda, cutoff = 0.7, size.legend = 1.1)
    ## also show intra-block correlations
    circosPlot(nutrimouse.sgccda, cutoff = 0.7,
               size.legend = 1.1, showIntraLinks = TRUE)
    ## show lines
    circosPlot(nutrimouse.sgccda, cutoff = 0.7, line = TRUE, ncol.legend = 1,
               size.legend = 1.1, showIntraLinks = TRUE)
    ## custom line legends
    circosPlot(nutrimouse.sgccda, cutoff = 0.7, line = TRUE, ncol.legend = 2,
               size.legend = 1.1, showIntraLinks = TRUE)

    ## adjust feature and block names radially
    circosPlot(nutrimouse.sgccda, cutoff = 0.7, size.legend = 1.1)
    circosPlot(nutrimouse.sgccda, cutoff = 0.7, size.legend = 1.1, var.adj = 0.8, block.labels.adj = -0.5)

    ## End(Not run)

[Package mixOmics version 6.16.3 Index]