Rgb (version 1.5.1)

yline:

Description

This function handles the collision between objects to be drawn, also accounting for labels. It is provided as a convenient component of custom drawing functions, and is currently in use in draw.boxes and draw.steps.

Usage

yline(boxes, start, end, label, labelStrand, labelCex, labelSrt, labelAdj,
    labelOverflow, maxDepth)

Arguments

boxes
A data.frame with "start.plot" and "end.plot" integer columns defining the boundaries of the graphical elements to be drawn and a "label" character column. In a typical use case, they correspond to the "start", "end" and "name" columns from the slice to be drawn.
start
Single integer value, the left boundary of the window, in base pairs.
end
Single integer value, the right boundary of the window, in base pairs.
label
Single logical value, whether to print labels on boxes or not.
labelStrand
Single logical value, whether to add the strand at the end of labels or not.
labelCex
Single numeric value, character expansion factor for labels.
labelSrt
Single numeric value, string rotation angle for labels.
labelAdj
'left', 'right' or 'center', the horizontal adjustment of the labels on the boxes.
labelOverflow
Single logical value, whether to write labels on boxes too narrow to host them or not.
maxDepth
Single integer value, the maximum amount of box heights allowed on the plot to avoid overlaps (if exhausted an error message will be ploted, turning label to FALSE might help).

Value

Returns boxes with an additional "yline" integer column defining the y coordinate at which the box should be drawn to avoid collision. If an error occurs, a simpleError object will be returned instead and the drawing should be aborted (see draw.boxes code for a functional example).

See Also

draw.boxes, draw.steps