PlotApp#

class biotite.application_v2.viennarna.PlotApp(path: PathLike[str] | str = 'RNAplot')[source]#

Bases: LocalApp

A handle to ViennaRNA’s RNAplot.

The structure has to be provided either in dot bracket notation or as a ndarray of base pairs and the total sequence length.

Parameters:
pathstr, optional

Path of the RNAplot binary.

Examples

>>> coordinates = PlotApp().run("((..))").result()
>>> print(coordinates)
[[ -92.50   92.50]
 [ -92.50   77.50]
 [ -90.31   58.24]
 [-109.69   58.24]
 [-107.50   77.50]
 [-107.50   92.50]]
class Layout(*values)#

Bases: IntEnum

This enum type represents the layout type of the plot according to the official RNAplot orientation.

RADIAL = 0#
NAVIEW = 1#
CIRCULAR = 2#
RNATURTLE = 3#
RNAPUZZLER = 4#
run(dot_bracket: str | None = None, base_pairs: NDArray2[N, C2, np.integer] | None = None, length: int | None = None, layout_type: Layout = Layout.NAVIEW) → CommandSetup[NDArray2[N, C2, np.floating]]#

Get coordinates for a 2D representation of an RNA structure.

Parameters:
dot_bracketstr, optional

The structure in dot bracket notation.

base_pairsndarray, shape=(n,2), optional

Each row corresponds to the positions of the bases in the strand. This parameter is mutually exclusive to dot_bracket.

lengthint, optional

The number of bases in the strand. This parameter is required if base_pairs is given.

layout_typePlotApp.Layout, optional

The layout type according to the RNAplot documentation.

Returns:
futureFuture of ndarray, shape=(n,2), dtype=float

A handle to the running computation. Call Future.result() to obtain the 2D coordinates, where each row holds the x and y coordinate of one base.