Gtkmm-PLplot 3.0
A scientific plotting library for Gtkmm
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | List of all members
Gtk::PLplot::PlotDataPolar Class Reference

a class that will hold a single dataset and its properties for a PlotPolar plot More...

#include <gtkmm-plplot/plotdatapolar.h>

Inheritance diagram for Gtk::PLplot::PlotDataPolar:
Inheritance graph
[legend]

Public Member Functions

 PlotDataPolar (const std::vector< double > &R, const std::vector< double > &theta, Gdk::RGBA color=Gdk::RGBA("red"), LineStyle line_style=CONTINUOUS, double line_width=PLOTDATA_DEFAULT_LINE_WIDTH)
 
 PlotDataPolar (const std::valarray< double > &R, const std::valarray< double > &theta, Gdk::RGBA color=Gdk::RGBA("red"), LineStyle line_style=CONTINUOUS, double line_width=PLOTDATA_DEFAULT_LINE_WIDTH)
 
virtual ~PlotDataPolar ()
 
std::vector< double > get_vector_r ()
 
std::vector< double > get_vector_theta ()
 
virtual void get_max_r (double &rmax)
 
- Public Member Functions inherited from Gtk::PLplot::PlotData2D
 PlotData2D (const std::vector< double > &x, const std::vector< double > &y, Gdk::RGBA color=Gdk::RGBA("red"), LineStyle line_style=CONTINUOUS, double line_width=PLOTDATA_DEFAULT_LINE_WIDTH)
 
 PlotData2D (const std::valarray< double > &x, const std::valarray< double > &y, Gdk::RGBA color=Gdk::RGBA("red"), LineStyle line_style=CONTINUOUS, double line_width=PLOTDATA_DEFAULT_LINE_WIDTH)
 
 PlotData2D (const std::vector< double > &y, Gdk::RGBA color=Gdk::RGBA("red"), LineStyle line_style=CONTINUOUS, double line_width=PLOTDATA_DEFAULT_LINE_WIDTH)
 
 PlotData2D (const std::valarray< double > &y, Gdk::RGBA color=Gdk::RGBA("red"), LineStyle line_style=CONTINUOUS, double line_width=PLOTDATA_DEFAULT_LINE_WIDTH)
 
virtual ~PlotData2D ()
 
std::vector< double > get_vector_x ()
 
std::vector< double > get_vector_y ()
 
size_t size ()
 
virtual void get_extremes (double &xmin, double &xmax, double &ymin, double &ymax)
 
void set_symbol (Glib::ustring symbol)
 
Glib::ustring get_symbol ()
 
void set_symbol_color (Gdk::RGBA color)
 
Gdk::RGBA get_symbol_color ()
 
void set_symbol_height_scale_factor (double scale_factor=1.0)
 
double get_symbol_height_scale_factor ()
 
virtual void add_datapoint (double xval, double yval)
 
virtual void add_datapoint (std::pair< double, double > xy_pair)
 
virtual void remove_datapoint (size_t index)
 
virtual void replace_datapoints (const std::vector< double > &x, const std::vector< double > &y)
 
virtual void replace_datapoints (const std::valarray< double > &x, const std::valarray< double > &y)
 
virtual void draw_plot_data (const Cairo::RefPtr< Cairo::Context > &cr, plstream *pls) override
 
- Public Member Functions inherited from Gtk::PLplot::PlotDataLine
virtual ~PlotDataLine ()
 
void set_color (Gdk::RGBA color)
 
Gdk::RGBA get_color ()
 
void set_line_style (LineStyle line_style)
 
LineStyle get_line_style ()
 
void set_line_width (double line_width)
 
double get_line_width ()
 
- Public Member Functions inherited from Gtk::PLplot::PlotData
virtual ~PlotData ()
 
void set_name (Glib::ustring name)
 
Glib::ustring get_name ()
 
void show ()
 
void hide ()
 
bool is_showing () const
 
sigc::signal< void(void)> signal_changed ()
 
sigc::signal< void(void)> signal_data_modified ()
 
- Public Member Functions inherited from Gtk::PLplot::Object
virtual void set_manage ()
 

Private Member Functions

 PlotDataPolar ()=delete
 no default constructor
 
PlotDataPolaroperator= (const PlotDataPolar &)=delete
 no assignment operator
 
 PlotDataPolar (const PlotDataPolar &source)=delete
 no default copy constructor;
 

Additional Inherited Members

- Protected Member Functions inherited from Gtk::PLplot::PlotDataLine
 PlotDataLine (Gdk::RGBA color, LineStyle line_style, double line_width)
 
- Protected Member Functions inherited from Gtk::PLplot::PlotData
virtual void on_changed ()
 
virtual void on_data_modified ()
 
 PlotData ()
 
- Protected Member Functions inherited from Gtk::PLplot::Object
 Object ()
 
- Protected Attributes inherited from Gtk::PLplot::PlotData2D
std::vector< double > x
 The X-values of the dataset.
 
std::vector< double > y
 The Y-values of the dataset.
 
Glib::ustring symbol
 If not an empty string, the symbol will be plotted at each of the data points from x and y.
 
Gdk::RGBA symbol_color
 The color the symbol will be plotted in.
 
double symbol_scale_factor
 Scale factor that will determine the size of the symbols. Default is 1.
 
- Protected Attributes inherited from Gtk::PLplot::PlotDataLine
Gdk::RGBA color
 The color the dataset will be drawn in.
 
LineStyle line_style
 The linestyle that will be used for this dataset in the plot.
 
double line_width
 The line width of the dataset. Default is 1.0.
 
- Protected Attributes inherited from Gtk::PLplot::PlotData
sigc::signal< void(void)> _signal_changed
 signal that gets emitted whenever any of the dataset proprties is changed.
 
sigc::signal< void(void)> _signal_data_modified
 signal that gets emitted whenever the X- and Y-datasets have been modified.
 

Detailed Description

a class that will hold a single dataset and its properties for a PlotPolar plot

Instances of this class contain a single dataset for a PlotPolar two-dimensional polar plot, consisting of the raw R- and θ-data, along with a number of properties that will determine the appearance of the plot. Data may be represented as a line, symbols or both. The constructors of this class allow to use either std::vector or std::valarray as sources of data, for added flexibility. Internally they are stored only as std::vector though. Important is that whenever a property is changed, signal_changed() is emitted, which will eventually be picked up by the canvas that will hold the plot. Several of the methods that are offered by this class are demonstrated in Example 6: Polar coordinate systems

Constructor & Destructor Documentation

◆ PlotDataPolar() [1/4]

Gtk::PLplot::PlotDataPolar::PlotDataPolar ( )
privatedelete

no default constructor

◆ PlotDataPolar() [2/4]

Gtk::PLplot::PlotDataPolar::PlotDataPolar ( const PlotDataPolar source)
privatedelete

no default copy constructor;

◆ PlotDataPolar() [3/4]

Gtk::PLplot::PlotDataPolar::PlotDataPolar ( const std::vector< double > &  R,
const std::vector< double > &  theta,
Gdk::RGBA  color = Gdk::RGBA("red"),
LineStyle  line_style = CONTINUOUS,
double  line_width = PLOTDATA_DEFAULT_LINE_WIDTH 
)

Constructor

This constructor initializes a new dataset using two vectors, one for the R-values, and one for the θ-values. Optionally, one can also use the constructor to override the default color, line style and line width.

Parameters
Rthe R-values, as std::vector
thetathe θ-values, as std::vector
colorthe line color, default is red
line_stylethe line style, default is CONTINUOUS
line_widththe line width, default is 1.0
Exceptions
Gtk::PLplot::Exception

◆ PlotDataPolar() [4/4]

Gtk::PLplot::PlotDataPolar::PlotDataPolar ( const std::valarray< double > &  R,
const std::valarray< double > &  theta,
Gdk::RGBA  color = Gdk::RGBA("red"),
LineStyle  line_style = CONTINUOUS,
double  line_width = PLOTDATA_DEFAULT_LINE_WIDTH 
)

Constructor

This constructor initializes a new dataset using two valarrays, one for the R-values, and one for the θ-values. Optionally, one can also use the constructor to override the default color, line style and line width.

Parameters
Rthe R-values, as std::valarray
thetathe θ-values, as std::valarray
colorthe line color, default is red
line_stylethe line style, default is CONTINUOUS
line_widththe line width, default is 1.0

◆ ~PlotDataPolar()

virtual Gtk::PLplot::PlotDataPolar::~PlotDataPolar ( )
virtual

Destructor

Member Function Documentation

◆ get_max_r()

virtual void Gtk::PLplot::PlotDataPolar::get_max_r ( double &  rmax)
virtual

Get the R-data maximum

Parameters
rmaxR maximum value

◆ get_vector_r()

std::vector< double > Gtk::PLplot::PlotDataPolar::get_vector_r ( )
Returns
a copy of the dataset R-values

◆ get_vector_theta()

std::vector< double > Gtk::PLplot::PlotDataPolar::get_vector_theta ( )
Returns
a copy of the dataset θ-values

◆ operator=()

PlotDataPolar & Gtk::PLplot::PlotDataPolar::operator= ( const PlotDataPolar )
privatedelete

no assignment operator