|
| PlotHistogram (PlotDataHistogram &data, const Glib::ustring &axis_title_x="X-axis", const Glib::ustring &axis_title_y="Y-axis", const Glib::ustring &plot_title="", const double plot_width_norm=1.0, const double plot_height_norm=1.0, const double plot_offset_horizontal_norm=0.0, const double plot_offset_vertical_norm=0.0) |
|
virtual | ~PlotHistogram () |
|
virtual void | draw_plot (const Cairo::RefPtr< Cairo::Context > &cr, const int width, const int height) override |
|
virtual | ~Plot () |
|
virtual void | remove_data (unsigned int plot_data_index) |
|
virtual void | remove_data (PlotData &plot_data_member) |
|
virtual void | remove_object (unsigned int plot_object_index) |
|
virtual void | remove_object (PlotObject &plot_object_member) |
|
virtual PlotData * | get_data (unsigned int data_index=0) final |
|
void | set_axis_title_x (Glib::ustring title) |
|
void | set_axis_title_y (Glib::ustring title) |
|
Glib::ustring | get_axis_title_x () |
|
Glib::ustring | get_axis_title_y () |
|
void | set_plot_title (Glib::ustring title) |
|
Glib::ustring | get_plot_title () |
|
void | show () |
|
void | hide () |
|
bool | is_showing () const |
|
Gdk::RGBA | get_background_color () |
|
void | set_background_color (Gdk::RGBA color) |
|
Gdk::RGBA | get_axes_color () |
|
void | set_axes_color (Gdk::RGBA color) |
|
Gdk::RGBA | get_titles_color () |
|
void | set_titles_color (Gdk::RGBA color) |
|
sigc::signal< void(void)> | signal_changed () |
|
sigc::signal< void(PlotData *)> | signal_data_added () |
|
sigc::signal< void(PlotData *)> | signal_data_removed () |
|
sigc::signal< void(PlotObject *)> | signal_object_added () |
|
sigc::signal< void(PlotObject *)> | signal_object_removed () |
|
virtual void | set_manage () |
|
virtual | ~RegionSelection () |
|
void | set_region (double xmin, double xmax, double ymin, double ymax) |
|
void | get_region (double &xmin, double &xmax, double &ymin, double &ymax) |
|
bool | get_region_selectable () |
|
void | set_region_selectable (bool selectable=true) |
|
bool | get_region_zoomable () |
|
void | set_region_zoomable (bool zoomable=true) |
|
double | get_region_zoom_scale_factor () |
|
void | set_region_zoom_scale_factor (double scale_factor) |
|
Gdk::RGBA | get_region_selection_color () |
|
void | set_region_selection_color (Gdk::RGBA color) |
|
double | get_region_selection_width () |
|
void | set_region_selection_width (double line_width) |
|
bool | get_region_pannable () |
|
void | set_region_pannable (bool pannable=true) |
|
sigc::signal< void(double, double, double, double)> | signal_select_region () |
|
sigc::signal< void(double, double)> | signal_cursor_motion () |
|
sigc::signal< void(double, double)> | signal_cursor_enter () |
|
sigc::signal< void(void)> | signal_cursor_leave () |
|
sigc::signal< std::vector< double >(double, double, double, double)> | signal_pan () |
|
sigc::signal< void(double, double)> | signal_double_press () |
|
sigc::signal< void(double, double, GdkScrollDirection)> | signal_zoom_region () |
|
|
virtual void | plot_data_modified () override |
| a method that will update the _range variables when datasets are added, modified or removed.
|
|
| PlotHistogram (const Glib::ustring &axis_title_x, const Glib::ustring &axis_title_y, const Glib::ustring &plot_title, const double plot_width_norm, const double plot_height_norm, const double plot_offset_horizontal_norm, const double plot_offset_vertical_norm) |
|
virtual void | add_data (PlotDataHistogram &data) |
|
virtual void | on_changed () |
|
virtual void | on_data_added (PlotData *new_data) |
|
virtual void | on_data_removed (PlotData *removed_data) |
|
virtual void | on_object_added (PlotObject *new_object) |
|
virtual void | on_object_removed (PlotObject *removed_object) |
|
virtual void | draw_plot_init (const Cairo::RefPtr< Cairo::Context > &cr, const int width, const int height) final |
|
| Plot (const Glib::ustring &axis_title_x, const Glib::ustring &axis_title_y, const Glib::ustring &plot_title, const double plot_width_norm, const double plot_height_norm, const double plot_offset_horizontal_norm, const double plot_offset_vertical_norm) |
|
| Object () |
|
virtual void | coordinate_transform_plplot_to_cairo (double x_pl, double y_pl, double &x_cr, double &y_cr) final |
|
virtual void | coordinate_transform_cairo_to_plplot (double x_cr, double y_cr, double &x_pl, double &y_pl) final |
|
virtual void | coordinate_transform_world_to_cairo (double x_wr, double y_wr, double &x_cr, double &y_cr) final |
|
virtual void | coordinate_transform_cairo_to_world (double x_cr, double y_cr, double &x_wr, double &y_wr) final |
|
virtual void | coordinate_transform_world_to_plplot (double x_wr, double y_wr, double &x_pl, double &y_pl) |
|
virtual void | coordinate_transform_plplot_to_world (double x_pl, double y_pl, double &x_wr, double &y_wr) |
|
virtual void | on_select_region (double xmin, double xmax, double ymin, double ymax) |
|
virtual void | on_zoom_region (double x, double y, GdkScrollDirection direction) |
|
virtual void | on_cursor_motion (double x, double y) |
|
virtual void | on_cursor_enter (double x, double y) |
|
virtual void | on_cursor_leave () |
|
virtual std::vector< double > | on_pan (double old_x, double old_y, double new_x, double new_y) |
|
virtual void | on_double_press (double x, double y) |
|
| RegionSelection () |
|
| RegionSelection (const RegionSelection ®ion_selection)=default |
|
|
static void | ensure_valid_range (double &val0, double &val1) |
| internal function that ensures valid ranges are always plotted, mostly avoiding case where for either x or y, data min is equal to data max.
|
|
std::vector< PlotData * > | plot_data |
| vector that contains pointers to the PlotData datasets
|
|
std::vector< PlotObject * > | plot_objects |
| vector that contains pointers to the PlotObject datasets
|
|
Glib::ustring | axis_title_x |
| X-axis title.
|
|
Glib::ustring | axis_title_y |
| Y-axis title.
|
|
Glib::ustring | plot_title |
| Plot title.
|
|
plstream * | pls |
| the plstream object that will ensure the connection with PLplot
|
|
int | canvas_width |
| the width of the canvas in Cairo units
|
|
int | canvas_height |
| the height of the canvas in Cairo units
|
|
int | plot_offset_x |
| the offset of the plot with respect to the top left corner of the canvas, measured along the horizontal (X-) axis in Cairo units
|
|
int | plot_offset_y |
| the offset of the plot with respect to the top left corner of the canvas, measured along the vertical (Y-) axis in Cairo units
|
|
int | plot_width |
| the current width of the plot in Cairo units
|
|
int | plot_height |
| the current height of the plot in Cairo units
|
|
bool | shown |
| true means the plot is currently visible, false means it is not plotted
|
|
Gdk::RGBA | background_color |
| the currently used background color of the plot (default = fully transparent white, meaning that the background will be determined by the canvas)
|
|
const double | plot_width_norm |
| the normalized plot width, calculated relative to the canvas width
|
|
const double | plot_height_norm |
| the normalized plot height, calculated relative to the canvas height
|
|
const double | plot_offset_horizontal_norm |
| the normalized horizontal offset from the canvas top left corner, calculated relative to the canvas width
|
|
const double | plot_offset_vertical_norm |
| the normalized vertical offset from the canvas top left corner, calculated relative to the canvas height
|
|
Gdk::RGBA | axes_color |
| the currently used color to draw the axes, the box and gridlines. Default is opaque black
|
|
Gdk::RGBA | titles_color |
| the currently used color to draw the axes and plot titles. Default is opaque black
|
|
sigc::signal< void(void)> | _signal_changed |
| signal that gets emitted whenever any of the plot parameters, or any of the contained PlotData datasets is changed.
|
|
sigc::signal< void(PlotData *)> | _signal_data_added |
| signal emitted whenever a PlotData dataset is added to the plot
|
|
sigc::signal< void(PlotData *)> | _signal_data_removed |
| signal emitted whenever data is removed from the plot.
|
|
sigc::signal< void(PlotObject *)> | _signal_object_added |
| signal emitted whenever a PlotObject is added to the plot
|
|
sigc::signal< void(PlotObject *)> | _signal_object_removed |
| signal emitted whenever a PlotObject is removed from the plot.
|
|
double | cairo_range_x [2] |
| the current range shown on the plot for the X-axis in Cairo coordinates
|
|
double | cairo_range_y [2] |
| the current range shown on the plot for the Y-axis in Cairo coordinates
|
|
double | plotted_range_x [2] |
| the current range shown on the plot for the X-axis in PLplot coordinates (NOT world!!!)
|
|
double | plotted_range_y [2] |
| the current range shown on the plot for the Y-axis in PLplot coordinates (NOT world!!!)
|
|
double | plot_data_range_x [2] |
| the maximum range covered by the X-values of the datasets in PLplot coordinates (NOT world!!!)
|
|
double | plot_data_range_y [2] |
| the maximum range covered by the Y-values of the datasets in PLplot coordinates (NOT world!!!)
|
|
sigc::signal< void(double, double, double, double)> | _signal_select_region |
| signal that gets emitted whenever a new region was selected using the mouse pointer in Canvas::on_button_release_event()
|
|
sigc::signal< void(double, double, GdkScrollDirection)> | _signal_zoom_region |
| signal that gets emitted whenever one zooms in on the plot using the mouse scroll wheel in Canvas::on_scroll_event()
|
|
sigc::signal< void(double, double)> | _signal_cursor_motion |
| signal that will be emitted whenever the cursor (usually the mouse) is moved.
|
|
sigc::signal< void(double, double)> | _signal_cursor_enter |
| signal that will be emitted whenever the cursor (usually the mouse) enter.
|
|
sigc::signal< void(void)> | _signal_cursor_leave |
| signal that will be emitted whenever the cursor (usually the mouse) leave.
|
|
sigc::signal< std::vector< double >(double, double, double, double)> | _signal_pan |
| signal that will be emitted whenever the cursor is moved within a pannable plot while the SHIFT key is pressed in and the left mouse button is pressed.
|
|
sigc::signal< void(double, double)> | _signal_double_press |
| signal that will emitted whenever a double mouse-click event was recorded within the plot box. Default response will be to reset the region to a range determined by the minima and maxima of the X- and Y- datasets.
|
|
a class for plotting histograms
A class for histogram plots.
Construction requires a single PlotDataHistogram dataset (currently implemented by PlotDataHistogramUnbinned and PlotDataHistogramBinned), and no datasets may be added afterwards, Several properties may be set such as the axes and plot titles. 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. For more information, the reader is referred to example Example 12: Histograms.