GogPlot

GogPlot — Base class for plots

Synopsis

                    GogPlotBoundInfo;
GogPlot*            gog_plot_new_by_type                (GogPlotType const *type);
GogPlot*            gog_plot_new_by_name                (char const *id);
void                gog_plot_request_cardinality_update (GogPlot *plot);
void                gog_plot_update_cardinality         (GogPlot *plot,
                                                         int index_num);
void                gog_plot_get_cardinality            (GogPlot *plot,
                                                         unsigned *full,
                                                         unsigned *visible);
void                gog_plot_foreach_elem               (GogPlot *plot,
                                                         gboolean only_visible,
                                                         GogEnumFunc handler,
                                                         gpointer data);
GSListconst *       gog_plot_get_series                 (GogPlot const *plot);
GOData*             gog_plot_get_axis_bounds            (GogPlot *plot,
                                                         GogAxisType axis,
                                                         GogPlotBoundInfo *bounds);
gboolean            gog_plot_supports_vary_style_by_element
                                                        (GogPlot const *plot);
GogSeries*          gog_plot_new_series                 (GogPlot *plot);
GogPlotDescconst *  gog_plot_description                (GogPlot const *plot);
GogAxisSet          gog_plot_axis_set_pref              (GogPlot const *plot);
gboolean            gog_plot_axis_set_is_valid          (GogPlot const *plot,
                                                         GogAxisSet type);
gboolean            gog_plot_axis_set_assign            (GogPlot *plot,
                                                         GogAxisSet type);
void                gog_plot_axis_clear                 (GogPlot *plot,
                                                         GogAxisSet filter);
GogAxis*            gog_plot_get_axis                   (GogPlot const *plot,
                                                         GogAxisType type);
void                gog_plot_set_axis                   (GogPlot *plot,
                                                         GogAxis *axis);
void                gog_plot_update_3d                  (GogPlot *plot);
void                gog_plot_guru_helper                (GogPlot *plot);
void                gog_plot_clear_series               (GogPlot *plot);

Description

Details

GogPlotBoundInfo

typedef struct {
	struct {
		double minima, maxima;
	} val, logical;
	gboolean is_discrete;
	gboolean center_on_ticks;
	GOFormat *fmt;

	const GODateConventions *date_conv;
} GogPlotBoundInfo;


gog_plot_new_by_type ()

GogPlot*            gog_plot_new_by_type                (GogPlotType const *type);

type :

Returns :


gog_plot_new_by_name ()

GogPlot*            gog_plot_new_by_name                (char const *id);

id :

Returns :


gog_plot_request_cardinality_update ()

void                gog_plot_request_cardinality_update (GogPlot *plot);

plot :


gog_plot_update_cardinality ()

void                gog_plot_update_cardinality         (GogPlot *plot,
                                                         int index_num);

Update cardinality and cache result. See gog_chart_get_cardinality.

plot :

GogPlot

index_num :

index offset for this plot

gog_plot_get_cardinality ()

void                gog_plot_get_cardinality            (GogPlot *plot,
                                                         unsigned *full,
                                                         unsigned *visible);

Return the number of logical elements in the plot. See gog_chart_get_cardinality.

full and visible may be NULL.

plot :

GogPlot

full :

placeholder for full cardinality

visible :

placeholder for visible cardinality

gog_plot_foreach_elem ()

void                gog_plot_foreach_elem               (GogPlot *plot,
                                                         gboolean only_visible,
                                                         GogEnumFunc handler,
                                                         gpointer data);

plot :

only_visible :

handler :

data :


gog_plot_get_series ()

GSListconst *       gog_plot_get_series                 (GogPlot const *plot);

plot :

GogPlot

Returns :

A list of the series in plot. Do not modify or free the list.

gog_plot_get_axis_bounds ()

GOData*             gog_plot_get_axis_bounds            (GogPlot *plot,
                                                         GogAxisType axis,
                                                         GogPlotBoundInfo *bounds);

Queries plot for its axis preferences for axis and stores the results in bounds. All elements of bounds are initialized to sane values before the query _EXCEPT_ ::fmt. The caller is responsible for initializing it. This is done so that once on plot has selected a format the others need not do the lookup too if so desired.

Caller is responsible for unrefing ::fmt.

plot :

GogPlot

axis :

GogAxisType

bounds :

GogPlotBoundInfo

Returns :

The data providing the bound (does not add a ref)

gog_plot_supports_vary_style_by_element ()

gboolean            gog_plot_supports_vary_style_by_element
                                                        (GogPlot const *plot);

plot :

Returns :


gog_plot_new_series ()

GogSeries*          gog_plot_new_series                 (GogPlot *plot);

plot :

GogPlot

Returns :

a new GogSeries of a type consistent with plot.

gog_plot_description ()

GogPlotDescconst *  gog_plot_description                (GogPlot const *plot);

plot :

Returns :


gog_plot_axis_set_pref ()

GogAxisSet          gog_plot_axis_set_pref              (GogPlot const *plot);

plot :

Returns :


gog_plot_axis_set_is_valid ()

gboolean            gog_plot_axis_set_is_valid          (GogPlot const *plot,
                                                         GogAxisSet type);

plot :

type :

Returns :


gog_plot_axis_set_assign ()

gboolean            gog_plot_axis_set_assign            (GogPlot *plot,
                                                         GogAxisSet type);

plot :

type :

Returns :


gog_plot_axis_clear ()

void                gog_plot_axis_clear                 (GogPlot *plot,
                                                         GogAxisSet filter);

A utility method to clear all existing axis associations flagged by filter

plot :

GogPlot

filter :

GogAxisSet

gog_plot_get_axis ()

GogAxis*            gog_plot_get_axis                   (GogPlot const *plot,
                                                         GogAxisType type);

plot :

type :

Returns :


gog_plot_set_axis ()

void                gog_plot_set_axis                   (GogPlot *plot,
                                                         GogAxis *axis);

Connect axis and plot.

plot :

GogPlot

axis :

GogAxis

gog_plot_update_3d ()

void                gog_plot_update_3d                  (GogPlot *plot);

plot :


gog_plot_guru_helper ()

void                gog_plot_guru_helper                (GogPlot *plot);

plot :


gog_plot_clear_series ()

void                gog_plot_clear_series               (GogPlot *plot);

plot :