R: Add raster images

circos.raster {circlize} | R Documentation

## Add raster images

### Description

Add raster images

### Usage

    circos.raster(image, x, y, width, height,
        facing = c("inside", "outside", "reverse.clockwise", "clockwise",
        "downward", "bending.inside", "bending.outside"),
        niceFacing = FALSE, sector.index = get.cell.meta.data("sector.index"),
        track.index = get.cell.meta.data("track.index"),
        scaling = 1)

### Arguments

`image` | a `raster` object, or an object that can be converted by `as.raster`
`x` | position of the center of the raster image, measued in the data coordinate in the cell
`y` | position of the center of the raster image, measued in the data coordinate in the cell
`width` | width of the raster image. When `facing` is one of "inside", "outside", "clockwise" and "reverse.clockwise", the image should have absolute size where the value of `width` should be specified like `20mm`, `1cm` or `0.5inche`. When `facing` is one of `bending.inside` and `bending.outside`, the value of `width` is measured in the data coordinate in the cell.
`height` | height of the raster image. Same format as `width`. If the value of `height` is omit, default height is calculated by taking the aspect ratio of the original image. But when `facing` is one of `bending.inside` and `bending.outside`, `height` is mandatory to set.
`facing` | facing of the raster image
`niceFacing` | facing of text. Please refer to vignette for different settings
`sector.index` | index for the sector
`track.index` | index for the track
`scaling` | scaling factor to resize the raster image.

### Author(s)

Zuguang Gu <z.gu@dkfz.de>

### Examples

    require(png)
    image = system.file("extdata", "Rlogo.png", package = "circlize")
    image = as.raster(readPNG(image))
    circos.initialize(letters[1:8], xlim = c(0, 1))
    circos.track(ylim = c(0, 1), panel.fun = function(x, y) {
        circos.raster(image, CELL_META$xcenter, CELL_META$ycenter, width = "2cm",
            facing = "inside", niceFacing = TRUE)
    })
    circos.clear()

    ## Not run:
    # NOTE: following takes quite a long time to run
    load(system.file("extdata", "doodle.RData", package = "circlize"))
    circos.par("cell.padding" = c(0, 0, 0, 0))
    circos.initialize(letters[1:16], xlim = c(0, 1))
    circos.track(ylim = c(0, 1), panel.fun = function(x, y) {
        img = img_list[[CELL_META$sector.numeric.index]]
        circos.raster(img, CELL_META$xcenter, CELL_META$ycenter, width = 1,
            height = 1, facing = "bending.inside")
    }, track.height = 0.25, bg.border = NA)
    circos.track(ylim = c(0, 1), panel.fun = function(x, y) {
        img = img_list[[CELL_META$sector.numeric.index + 16]]
        circos.raster(img, CELL_META$xcenter, CELL_META$ycenter, width = 1,
            height = 1, facing = "bending.inside")
    }, track.height = 0.25, bg.border = NA)
    circos.clear()

    ## End(Not run)

[Package circlize version 0.4.5 Index]