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 | |
#define | VRNA_PLOT_TYPE_NAVIEW 1 |
Definition of Plot type Naview | |
#define | VRNA_PLOT_TYPE_CIRCULAR 2 |
Definition of Plot type Circular | |
#define | VRNA_PLOT_TYPE_TURTLE 3 |
Definition of Plot type Turtle [29]. | |
#define | VRNA_PLOT_TYPE_PUZZLER 4 |
Definition of Plot type RNApuzzler [29]. | |
Typedefs | |
typedef struct vrna_plot_layout_s | vrna_plot_layout_t |
RNA secondary structure figure layout. | |
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. | |
vrna_plot_layout_t * | vrna_plot_layout_simple (const char *structure) |
Create a layout (coordinates, etc.) for a simple secondary structure plot. | |
vrna_plot_layout_t * | vrna_plot_layout_circular (const char *structure) |
Create a layout (coordinates, etc.) for a circular secondary structure plot. | |
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 [29]. | |
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 [29]. | |
void | vrna_plot_layout_free (vrna_plot_layout_t *layout) |
Free memory occupied by a figure layout data structure. | |
int | vrna_plot_coords (const char *structure, float **x, float **y, int plot_type) |
Compute nucleotide coordinates for secondary structure plot. | |
int | vrna_plot_coords_pt (const short *pt, float **x, float **y, int plot_type) |
Compute nucleotide coordinates for secondary structure plot. | |
int | vrna_plot_coords_simple (const char *structure, float **x, float **y) |
Compute nucleotide coordinates for secondary structure plot the Simple way | |
int | vrna_plot_coords_simple_pt (const short *pt, float **x, float **y) |
Compute nucleotide coordinates for secondary structure plot the Simple way | |
int | vrna_plot_coords_circular (const char *structure, float **x, float **y) |
Compute coordinates of nucleotides mapped in equal distancies onto a unit circle. | |
int | vrna_plot_coords_circular_pt (const short *pt, float **x, float **y) |
Compute nucleotide coordinates for a Circular Plot | |
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 [29]. | |
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 [29]. | |
vrna_plot_options_puzzler_t * | vrna_plot_options_puzzler (void) |
Create an RNApuzzler options data structure. | |
void | vrna_plot_options_puzzler_free (vrna_plot_options_puzzler_t *options) |
Free memory occupied by an RNApuzzler options data structure. | |
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 [29]. | |
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 [29]. | |
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 [6].
#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
#define VRNA_PLOT_TYPE_TURTLE 3 |
#include <ViennaRNA/plotting/layouts.h>
Definition of Plot type Turtle [29].
#define VRNA_PLOT_TYPE_PUZZLER 4 |
#include <ViennaRNA/plotting/layouts.h>
Definition of Plot type RNApuzzler [29].
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_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 [29].
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 [29].
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
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_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 [29].
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 arc_coords
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 [29].
Same as vrna_plot_coords_puzzler() but takes a pair table with the structure information as input.
x
, y
and arc_coords
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 [29].
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 arc_coords
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 [29].
Same as vrna_plot_coords_turtle() but takes a pair table with the structure information as input.
x
, y
and arc_coords
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) |