XeMultiGraph Class Reference

Xephyr style TMultiGraph. More...

#include <XeCore.h>

Inheritance diagram for XeMultiGraph:
XeStylized XeGraphics XeObject XeCore XeCore

List of all members.

Public Member Functions

void add (XeMultiGraph *mg)
 Add a multiGraph to the current one.
void add (XeGraph *g, int color, string legend="")
 Add an existing XeGraph, setting its color and legend.
void add (XeGraph *g, double z=UNDEFINED)
 Add an existing XeGraph.
void applyStyle ()
 Virtual method applying the XeStyle to the object.
void draw (string options="L", int withLegend=0)
 Draw the Multigraph.
void forceAxes (int which=0)
 Forces the labels according to those of one of the graphs (usually the 1st one).
string generatedXLabel ()
 automatic generation of X label
string generatedYLabel ()
 automatic generation of Y label
XeGraphgetGraph (int i)
 Get a graph.
double getMaxX ()
 Get maximum overall X.
double getMaxY ()
 Get maximum overall Y.
double getMinX ()
 Get minimum overall X.
double getMinY ()
 Get minimum overall Y.
double getMinYNotZero ()
 Get minimum overall Y, ignoring zeros.
XeGraphgetReferenceGraph ()
 Get the reference graph.
vector< double > * getVx ()
 Access to vector of x-values.
vector< double > * getVz ()
 Access to vector of z-values.
double * getX ()
 Access to array of x-values.
double getX (int g)
 Access to invidual x-value.
double * getZ ()
 Access to array of z-values.
double getZ (int g)
 Access to invidual z-value.
void modifyLineColor (int color=DEFAULT_LINE_COLOR)
void modifyLineStyle (int style=DEFAULT_LINE_STYLE)
void modifyLineWidth (int width=DEFAULT_LINE_WIDTH)
XeMultiGraphnormalize (int i=AUTO)
 Normarlize to one of its graphs, XeMultiGraph, ie divide each of this graphs by this one.
XeMultiGraphnormalize (XeGraph *reference)
 Normalize to an XeGraph, ie divide each of this graphs by this one.
bool printIt (int level=1)
 Dump the graphs.
void setAsymmetricRainbowColors ()
void setRainbowColors (int mode=ASYMMETRIC)
 Set the colors according the rainbow.
void setReferenceGraph (int i)
 Set the reference graph from its own list.
void setReferenceGraph (XeGraph *g)
 Set the reference graph (for further normalization).
void setSymmetricRainbowColors ()
 Set the colors according the symmetric rainbow.
XeMultiGraphtranspose ()
 Transpose the multigraph by changing its rows and columns.
 XeMultiGraph (string name, vector< XeGraph * > &v, vector< double > *vz=NULL, string xA="", string yA="", string zA="")
 Constructor of an XeMultiGraph from a list of existing graphs.
 XeMultiGraph (string name, int ng, XeGraph **g, double *z=NULL, string xA="", string yA="", string zA="")
 Constructor of an XeMultiGraph from a list of existing graphs.
 XeMultiGraph (string name, string xA="", string yA="", string zA="")
 Constructor of an XeMultiGraph from scratch.

Protected Member Functions

bool addLegend (string leg)
 Internal method : push one legent.
void resetTheLegends ()
 Reset all legends.

Protected Attributes

XeGraphreferenceGraph
set< string > theLegends
vector< double > Vx
vector< double > Vz

Detailed Description

Xephyr style TMultiGraph.

It is made of XeGraphs with all the same x vectors (known as Vx vector) Each graph differs from the other one by a z value (konwn as Vz vector)


Constructor & Destructor Documentation

XeMultiGraph::XeMultiGraph ( string  name,
string  xA = "",
string  yA = "",
string  zA = "" 
)

Constructor of an XeMultiGraph from scratch.

Parameters:
name name of the object
xA x-Label
yA y-Label
zA z-Label (name of parameter varying from graph to graph)
XeMultiGraph::XeMultiGraph ( string  name,
int  ng,
XeGraph **  g,
double *  z = NULL,
string  xA = "",
string  yA = "",
string  zA = "" 
)

Constructor of an XeMultiGraph from a list of existing graphs.

Parameters:
name name of the object
ng Number of pre-existing Xefraphs
g pointer to pre-existing XeGraphs
z z-values; if NULL assume 0,1,2,3 ...
xA x-Label
yA y-Label
zA z-Label (name of parameter varying from graph to graph)
XeMultiGraph::XeMultiGraph ( string  name,
vector< XeGraph * > &  v,
vector< double > *  vz = NULL,
string  xA = "",
string  yA = "",
string  zA = "" 
)

Constructor of an XeMultiGraph from a list of existing graphs.

Parameters:
name name of the object
v vector of pre-existing XeGraphs
vz z-values; if NULL assume 0,1,2,3 ...
xA x-Label
yA y-Label
zA z-Label (name of parameter varying from graph to graph)

Member Function Documentation

void XeMultiGraph::add ( XeMultiGraph mg  ) 

Add a multiGraph to the current one.

Parameters:
detailed in detail
void XeMultiGraph::add ( XeGraph g,
int  color,
string  legend = "" 
)

Add an existing XeGraph, setting its color and legend.

Parameters:
g XeGraph to be added
color the color
legend the legend
void XeMultiGraph::add ( XeGraph g,
double  z = UNDEFINED 
)

Add an existing XeGraph.

Parameters:
g XeGraph to be added
z The "z" value in the graph (i.e. the quantity changing from graph to graph). If missing, it will be the graph number;
bool XeMultiGraph::addLegend ( string  leg  )  [protected]

Internal method : push one legent.

Parameters:
leg Legend to be added
void XeMultiGraph::draw ( string  options = "L",
int  withLegend = 0 
) [virtual]

Draw the Multigraph.

Parameters:
options drawing options
withLegend with the legend box

Implements XeStylized.

void XeMultiGraph::forceAxes ( int  which = 0  ) 

Forces the labels according to those of one of the graphs (usually the 1st one).

Parameters:
which index of the reference graph
XeGraph* XeMultiGraph::getGraph ( int  i  ) 

Get a graph.

Parameters:
i sequence number
Returns:
a pointer to the requested XeGraph
XeGraph* XeMultiGraph::getReferenceGraph (  ) 

Get the reference graph.

Returns:
a pointer to the reference XeGraph
vector<double>* XeMultiGraph::getVx (  ) 

Access to vector of x-values.

Returns:
pointer to the vector
vector<double>* XeMultiGraph::getVz (  ) 

Access to vector of z-values.

Returns:
pointer to the vector
double* XeMultiGraph::getX (  ) 

Access to array of x-values.

Returns:
pointer to x-values
double XeMultiGraph::getX ( int  g  ) 

Access to invidual x-value.

Returns:
x-value
Parameters:
g graph index
double* XeMultiGraph::getZ (  ) 

Access to array of z-values.

Returns:
pointer to z-values
double XeMultiGraph::getZ ( int  g  ) 

Access to invidual z-value.

Returns:
z-value
Parameters:
g graph index
XeMultiGraph* XeMultiGraph::normalize ( int  i = AUTO  ) 

Normarlize to one of its graphs, XeMultiGraph, ie divide each of this graphs by this one.

Returns:
pointer to a newly created XeMultigraph
Parameters:
i sequence number (if AUTO), use the reference histogram
XeMultiGraph* XeMultiGraph::normalize ( XeGraph reference  ) 

Normalize to an XeGraph, ie divide each of this graphs by this one.

Returns:
pointer to a newly created XeMultigraph
Parameters:
reference Pointer XeGraph in the original one
bool XeMultiGraph::printIt ( int  level = 1  )  [virtual]

Dump the graphs.

Parameters:
level print level

Reimplemented from XeObject.

void XeMultiGraph::setRainbowColors ( int  mode = ASYMMETRIC  ) 

Set the colors according the rainbow.

Parameters:
mode ASYMMETRIC or SYMMETRIC, whether we have one or two rainbows
void XeMultiGraph::setReferenceGraph ( int  i  ) 

Set the reference graph from its own list.

Parameters:
i sequence number of reference graph
void XeMultiGraph::setReferenceGraph ( XeGraph g  ) 

Set the reference graph (for further normalization).

Parameters:
g the graph
XeMultiGraph* XeMultiGraph::transpose (  ) 

Transpose the multigraph by changing its rows and columns.

Returns:
pointer to a newly created multigraph

Member Data Documentation

Pointer to reference graph

set<string> XeMultiGraph::theLegends [protected]

Legends of indiviudal graphs

vector<double> XeMultiGraph::Vx [protected]

Vector of reference X value

vector<double> XeMultiGraph::Vz [protected]

Vector of "z" values


The documentation for this class was generated from the following file:
 All Classes Functions Variables

Generated on 10 Apr 2015 for Xephyr by  doxygen 1.6.1