RNAlib-2.4.14
|
|
Functions to compute coordinate layouts for secondary structure plots. More...
Functions to compute coordinate layouts for secondary structure plots.
Data Structures | |
struct | vrna_plot_layout_s |
struct | vrna_plot_options_puzzler_t |
Options data structure for RNApuzzler algorithm implementation. More... | |
Macros | |
#define | VRNA_PLOT_TYPE_SIMPLE 0 |
Definition of Plot type simple More... | |
#define | VRNA_PLOT_TYPE_NAVIEW 1 |
Definition of Plot type Naview More... | |
#define | VRNA_PLOT_TYPE_CIRCULAR 2 |
Definition of Plot type Circular More... | |
#define | VRNA_PLOT_TYPE_TURTLE 3 |
Definition of Plot type Turtle [23]. | |
#define | VRNA_PLOT_TYPE_PUZZLER 4 |
Definition of Plot type RNApuzzler [23]. | |
Typedefs | |
typedef struct vrna_plot_layout_s | vrna_plot_layout_t |
RNA secondary structure figure layout. More... | |
Functions | |
vrna_plot_layout_t * | vrna_plot_layout (const char *structure, unsigned int plot_type) |
Create a layout (coordinates, etc.) for a secondary structure plot. More... | |
vrna_plot_layout_t * | vrna_plot_layout_simple (const char *structure) |
Create a layout (coordinates, etc.) for a simple secondary structure plot. More... | |
vrna_plot_layout_t * | vrna_plot_layout_naview (const char *structure) |
Create a layout (coordinates, etc.) for a secondary structure plot using the Naview Algorithm [5]. More... | |
vrna_plot_layout_t * | vrna_plot_layout_circular (const char *structure) |
Create a layout (coordinates, etc.) for a circular secondary structure plot. More... | |
vrna_plot_layout_t * | vrna_plot_layout_turtle (const char *structure) |
Create a layout (coordinates, etc.) for a secondary structure plot using the Turtle Algorithm [23]. More... | |
vrna_plot_layout_t * | vrna_plot_layout_puzzler (const char *structure, vrna_plot_options_puzzler_t *options) |
Create a layout (coordinates, etc.) for a secondary structure plot using the RNApuzzler Algorithm [23]. More... | |
void | vrna_plot_layout_free (vrna_plot_layout_t *layout) |
Free memory occupied by a figure layout data structure. More... | |
int | vrna_plot_coords (const char *structure, float **x, float **y, int plot_type) |
Compute nucleotide coordinates for secondary structure plot. More... | |
int | vrna_plot_coords_pt (const short *pt, float **x, float **y, int plot_type) |
Compute nucleotide coordinates for secondary structure plot. More... | |
int | vrna_plot_coords_simple (const char *structure, float **x, float **y) |
Compute nucleotide coordinates for secondary structure plot the Simple way More... | |
int | vrna_plot_coords_simple_pt (const short *pt, float **x, float **y) |
Compute nucleotide coordinates for secondary structure plot the Simple way More... | |
int | vrna_plot_coords_circular (const char *structure, float **x, float **y) |
Compute coordinates of nucleotides mapped in equal distancies onto a unit circle. More... | |
int | vrna_plot_coords_circular_pt (const short *pt, float **x, float **y) |
Compute nucleotide coordinates for a Circular Plot More... | |
int | vrna_plot_coords_naview (const char *structure, float **x, float **y) |
Compute nucleotide coordinates for secondary structure plot using the Naview algorithm [5]. More... | |
int | vrna_plot_coords_naview_pt (const short *pt, float **x, float **y) |
Compute nucleotide coordinates for secondary structure plot using the Naview algorithm [5]. More... | |
int | vrna_plot_coords_puzzler (const char *structure, float **x, float **y, double **arc_coords, vrna_plot_options_puzzler_t *options) |
Compute nucleotide coordinates for secondary structure plot using the RNApuzzler algorithm [23]. More... | |
int | vrna_plot_coords_puzzler_pt (short const *const pair_table, float **x, float **y, double **arc_coords, vrna_plot_options_puzzler_t *puzzler) |
Compute nucleotide coordinates for secondary structure plot using the RNApuzzler algorithm [23]. More... | |
vrna_plot_options_puzzler_t * | vrna_plot_options_puzzler (void) |
Create an RNApuzzler options data structure. More... | |
void | vrna_plot_options_puzzler_free (vrna_plot_options_puzzler_t *options) |
Free memory occupied by an RNApuzzler options data structure. More... | |
int | vrna_plot_coords_turtle (const char *structure, float **x, float **y, double **arc_coords) |
Compute nucleotide coordinates for secondary structure plot using the RNAturtle algorithm [23]. More... | |
int | vrna_plot_coords_turtle_pt (short const *const pair_table, float **x, float **y, double **arc_coords) |
Compute nucleotide coordinates for secondary structure plot using the RNAturtle algorithm [23]. More... | |
struct vrna_plot_layout_s |
struct vrna_plot_options_puzzler_t |
Options data structure for RNApuzzler algorithm implementation.
#define VRNA_PLOT_TYPE_SIMPLE 0 |
#include <ViennaRNA/plotting/layouts.h>
Definition of Plot type simple
This is the plot type definition for several RNA structure plotting functions telling them to use Simple plotting algorithm
#define VRNA_PLOT_TYPE_NAVIEW 1 |
#include <ViennaRNA/plotting/layouts.h>
Definition of Plot type Naview
This is the plot type definition for several RNA structure plotting functions telling them to use Naview plotting algorithm [5].
#define VRNA_PLOT_TYPE_CIRCULAR 2 |
#include <ViennaRNA/plotting/layouts.h>
Definition of Plot type Circular
This is the plot type definition for several RNA structure plotting functions telling them to produce a Circular plot
typedef struct vrna_plot_layout_s vrna_plot_layout_t |
#include <ViennaRNA/plotting/layouts.h>
RNA secondary structure figure layout.
vrna_plot_layout_t* vrna_plot_layout | ( | const char * | structure, |
unsigned int | plot_type | ||
) |
#include <ViennaRNA/plotting/layouts.h>
Create a layout (coordinates, etc.) for a secondary structure plot.
This function can be used to create a secondary structure nucleotide layout that is then further processed by an actual plotting function. The layout algorithm can be specified using the plot_type
parameter, and the following algorithms are currently supported:
Passing an unsupported selection leads to the default algorithm VRNA_PLOT_TYPE_NAVIEW
structure | The secondary structure in dot-bracket notation |
plot_type | The layout algorithm to be used |
vrna_plot_layout_t* vrna_plot_layout_simple | ( | const char * | structure | ) |
#include <ViennaRNA/plotting/layouts.h>
Create a layout (coordinates, etc.) for a simple secondary structure plot.
This function basically is a wrapper to vrna_plot_layout() that passes the plot_type
VRNA_PLOT_TYPE_SIMPLE.
structure | The secondary structure in dot-bracket notation |
vrna_plot_layout_t* vrna_plot_layout_naview | ( | const char * | structure | ) |
#include <ViennaRNA/plotting/layouts.h>
Create a layout (coordinates, etc.) for a secondary structure plot using the Naview Algorithm [5].
This function basically is a wrapper to vrna_plot_layout() that passes the plot_type
VRNA_PLOT_TYPE_NAVIEW.
structure | The secondary structure in dot-bracket notation |
vrna_plot_layout_t* vrna_plot_layout_circular | ( | const char * | structure | ) |
#include <ViennaRNA/plotting/layouts.h>
Create a layout (coordinates, etc.) for a circular secondary structure plot.
This function basically is a wrapper to vrna_plot_layout() that passes the plot_type
VRNA_PLOT_TYPE_CIRCULAR.
structure | The secondary structure in dot-bracket notation |
vrna_plot_layout_t* vrna_plot_layout_turtle | ( | const char * | structure | ) |
#include <ViennaRNA/plotting/layouts.h>
Create a layout (coordinates, etc.) for a secondary structure plot using the Turtle Algorithm [23].
This function basically is a wrapper to vrna_plot_layout() that passes the plot_type
VRNA_PLOT_TYPE_TURTLE.
structure | The secondary structure in dot-bracket notation |
vrna_plot_layout_t* vrna_plot_layout_puzzler | ( | const char * | structure, |
vrna_plot_options_puzzler_t * | options | ||
) |
#include <ViennaRNA/plotting/layouts.h>
Create a layout (coordinates, etc.) for a secondary structure plot using the RNApuzzler Algorithm [23].
This function basically is a wrapper to vrna_plot_layout() that passes the plot_type
VRNA_PLOT_TYPE_PUZZLER.
structure | The secondary structure in dot-bracket notation |
void vrna_plot_layout_free | ( | vrna_plot_layout_t * | layout | ) |
#include <ViennaRNA/plotting/layouts.h>
Free memory occupied by a figure layout data structure.
layout | The layout data structure to free |
int vrna_plot_coords | ( | const char * | structure, |
float ** | x, | ||
float ** | y, | ||
int | plot_type | ||
) |
#include <ViennaRNA/plotting/layouts.h>
Compute nucleotide coordinates for secondary structure plot.
This function takes a secondary structure and computes X-Y coordinates for each nucleotide that then can be used to create a structure plot. The parameter plot_type
is used to select the underlying layout algorithm. Currently, the following selections are provided:
Passing an unsupported selection leads to the default algorithm VRNA_PLOT_TYPE_NAVIEW
Here is a simple example how to use this function, assuming variable structure
contains a valid dot-bracket string:
x
and y
to the corresponding memory locations. It's the users responsibility to cleanup this memory after usage!structure | The secondary structure in dot-bracket notation | |
[in,out] | x | The address of a pointer of X coordinates (pointer will point to memory, or NULL on failure) |
[in,out] | y | The address of a pointer of Y coordinates (pointer will point to memory, or NULL on failure) |
plot_type | The layout algorithm to be used |
int vrna_plot_coords_pt | ( | const short * | pt, |
float ** | x, | ||
float ** | y, | ||
int | plot_type | ||
) |
#include <ViennaRNA/plotting/layouts.h>
Compute nucleotide coordinates for secondary structure plot.
Same as vrna_plot_coords() but takes a pair table with the structure information as input.
x
and y
to the corresponding memory locations. It's the users responsibility to cleanup this memory after usage!pt | The pair table that holds the secondary structure | |
[in,out] | x | The address of a pointer of X coordinates (pointer will point to memory, or NULL on failure) |
[in,out] | y | The address of a pointer of Y coordinates (pointer will point to memory, or NULL on failure) |
plot_type | The layout algorithm to be used |
int vrna_plot_coords_simple | ( | const char * | structure, |
float ** | x, | ||
float ** | y | ||
) |
#include <ViennaRNA/plotting/layouts.h>
Compute nucleotide coordinates for secondary structure plot the Simple way
This function basically is a wrapper to vrna_plot_coords() that passes the plot_type
VRNA_PLOT_TYPE_SIMPLE.
Here is a simple example how to use this function, assuming variable structure
contains a valid dot-bracket string:
x
and y
to the corresponding memory locations. It's the users responsibility to cleanup this memory after usage!structure | The secondary structure in dot-bracket notation | |
[in,out] | x | The address of a pointer of X coordinates (pointer will point to memory, or NULL on failure) |
[in,out] | y | The address of a pointer of Y coordinates (pointer will point to memory, or NULL on failure) |
int vrna_plot_coords_simple_pt | ( | const short * | pt, |
float ** | x, | ||
float ** | y | ||
) |
#include <ViennaRNA/plotting/layouts.h>
Compute nucleotide coordinates for secondary structure plot the Simple way
Same as vrna_plot_coords_simple() but takes a pair table with the structure information as input.
x
and y
to the corresponding memory locations. It's the users responsibility to cleanup this memory after usage!pt | The pair table that holds the secondary structure | |
[in,out] | x | The address of a pointer of X coordinates (pointer will point to memory, or NULL on failure) |
[in,out] | y | The address of a pointer of Y coordinates (pointer will point to memory, or NULL on failure) |
int vrna_plot_coords_circular | ( | const char * | structure, |
float ** | x, | ||
float ** | y | ||
) |
#include <ViennaRNA/plotting/layouts.h>
Compute coordinates of nucleotides mapped in equal distancies onto a unit circle.
This function basically is a wrapper to vrna_plot_coords() that passes the plot_type
VRNA_PLOT_TYPE_CIRCULAR.
In order to draw nice arcs using quadratic bezier curves that connect base pairs one may calculate a second tangential point in addition to the actual R2 coordinates. the simplest way to do so may be to compute a radius scaling factor
in the interval
that weights the proportion of base pair span to the actual length of the sequence. This scaling factor can then be used to calculate the coordinates for
, i.e.
and
.
x
and y
to the corresponding memory locations. It's the users responsibility to cleanup this memory after usage!structure | The secondary structure in dot-bracket notation | |
[in,out] | x | The address of a pointer of X coordinates (pointer will point to memory, or NULL on failure) |
[in,out] | y | The address of a pointer of Y coordinates (pointer will point to memory, or NULL on failure) |
int vrna_plot_coords_circular_pt | ( | const short * | pt, |
float ** | x, | ||
float ** | y | ||
) |
#include <ViennaRNA/plotting/layouts.h>
Compute nucleotide coordinates for a Circular Plot
Same as vrna_plot_coords_circular() but takes a pair table with the structure information as input.
x
and y
to the corresponding memory locations. It's the users responsibility to cleanup this memory after usage!pt | The pair table that holds the secondary structure | |
[in,out] | x | The address of a pointer of X coordinates (pointer will point to memory, or NULL on failure) |
[in,out] | y | The address of a pointer of Y coordinates (pointer will point to memory, or NULL on failure) |
int vrna_plot_coords_naview | ( | const char * | structure, |
float ** | x, | ||
float ** | y | ||
) |
#include <ViennaRNA/plotting/naview.h>
Compute nucleotide coordinates for secondary structure plot using the Naview algorithm [5].
This function basically is a wrapper to vrna_plot_coords() that passes the plot_type
VRNA_PLOT_TYPE_NAVIEW.
Here is a simple example how to use this function, assuming variable structure
contains a valid dot-bracket string:
x
and y
to the corresponding memory locations. It's the users responsibility to cleanup this memory after usage!structure | The secondary structure in dot-bracket notation | |
[in,out] | x | The address of a pointer of X coordinates (pointer will point to memory, or NULL on failure) |
[in,out] | y | The address of a pointer of Y coordinates (pointer will point to memory, or NULL on failure) |
int vrna_plot_coords_naview_pt | ( | const short * | pt, |
float ** | x, | ||
float ** | y | ||
) |
#include <ViennaRNA/plotting/naview.h>
Compute nucleotide coordinates for secondary structure plot using the Naview algorithm [5].
Same as vrna_plot_coords_naview() but takes a pair table with the structure information as input.
x
and y
to the corresponding memory locations. It's the users responsibility to cleanup this memory after usage!pt | The pair table that holds the secondary structure | |
[in,out] | x | The address of a pointer of X coordinates (pointer will point to memory, or NULL on failure) |
[in,out] | y | The address of a pointer of Y coordinates (pointer will point to memory, or NULL on failure) |
int vrna_plot_coords_puzzler | ( | const char * | structure, |
float ** | x, | ||
float ** | y, | ||
double ** | arc_coords, | ||
vrna_plot_options_puzzler_t * | options | ||
) |
#include <ViennaRNA/plotting/RNApuzzler/RNApuzzler.h>
Compute nucleotide coordinates for secondary structure plot using the RNApuzzler algorithm [23].
This function basically is a wrapper to vrna_plot_coords() that passes the plot_type
VRNA_PLOT_TYPE_PUZZLER.
Here is a simple example how to use this function, assuming variable structure
contains a valid dot-bracket string and using the default options (options
= NULL):
x
, y
and to the corresponding memory locations. It's the users responsibility to cleanup this memory after usage!structure | The secondary structure in dot-bracket notation | |
[in,out] | x | The address of a pointer of X coordinates (pointer will point to memory, or NULL on failure) |
[in,out] | y | The address of a pointer of Y coordinates (pointer will point to memory, or NULL on failure) |
[in,out] | arc_coords | The address of a pointer that will hold arc coordinates (pointer will point to memory, or NULL on failure) |
options | The options for the RNApuzzler algorithm (or NULL) |
int vrna_plot_coords_puzzler_pt | ( | short const *const | pair_table, |
float ** | x, | ||
float ** | y, | ||
double ** | arc_coords, | ||
vrna_plot_options_puzzler_t * | puzzler | ||
) |
#include <ViennaRNA/plotting/RNApuzzler/RNApuzzler.h>
Compute nucleotide coordinates for secondary structure plot using the RNApuzzler algorithm [23].
Same as vrna_plot_coords_puzzler() but takes a pair table with the structure information as input.
x
, y
and to the corresponding memory locations. It's the users responsibility to cleanup this memory after usage!pt | The pair table that holds the secondary structure | |
[in,out] | x | The address of a pointer of X coordinates (pointer will point to memory, or NULL on failure) |
[in,out] | y | The address of a pointer of Y coordinates (pointer will point to memory, or NULL on failure) |
[in,out] | arc_coords | The address of a pointer that will hold arc coordinates (pointer will point to memory, or NULL on failure) |
options | The options for the RNApuzzler algorithm (or NULL) |
vrna_plot_options_puzzler_t* vrna_plot_options_puzzler | ( | void | ) |
#include <ViennaRNA/plotting/RNApuzzler/RNApuzzler.h>
Create an RNApuzzler options data structure.
void vrna_plot_options_puzzler_free | ( | vrna_plot_options_puzzler_t * | options | ) |
#include <ViennaRNA/plotting/RNApuzzler/RNApuzzler.h>
Free memory occupied by an RNApuzzler options data structure.
options | A pointer to the options data structure to free |
int vrna_plot_coords_turtle | ( | const char * | structure, |
float ** | x, | ||
float ** | y, | ||
double ** | arc_coords | ||
) |
#include <ViennaRNA/plotting/RNApuzzler/RNAturtle.h>
Compute nucleotide coordinates for secondary structure plot using the RNAturtle algorithm [23].
This function basically is a wrapper to vrna_plot_coords() that passes the plot_type
VRNA_PLOT_TYPE_TURTLE.
Here is a simple example how to use this function, assuming variable structure
contains a valid dot-bracket string:
x
, y
and to the corresponding memory locations. It's the users responsibility to cleanup this memory after usage!structure | The secondary structure in dot-bracket notation | |
[in,out] | x | The address of a pointer of X coordinates (pointer will point to memory, or NULL on failure) |
[in,out] | y | The address of a pointer of Y coordinates (pointer will point to memory, or NULL on failure) |
[in,out] | arc_coords | The address of a pointer that will hold arc coordinates (pointer will point to memory, or NULL on failure) |
int vrna_plot_coords_turtle_pt | ( | short const *const | pair_table, |
float ** | x, | ||
float ** | y, | ||
double ** | arc_coords | ||
) |
#include <ViennaRNA/plotting/RNApuzzler/RNAturtle.h>
Compute nucleotide coordinates for secondary structure plot using the RNAturtle algorithm [23].
Same as vrna_plot_coords_turtle() but takes a pair table with the structure information as input.
x
, y
and to the corresponding memory locations. It's the users responsibility to cleanup this memory after usage!pt | The pair table that holds the secondary structure | |
[in,out] | x | The address of a pointer of X coordinates (pointer will point to memory, or NULL on failure) |
[in,out] | y | The address of a pointer of Y coordinates (pointer will point to memory, or NULL on failure) |
[in,out] | arc_coords | The address of a pointer that will hold arc coordinates (pointer will point to memory, or NULL on failure) |