| Goffice Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | Object Hierarchy | Properties | ||||
GogPlot; GogPlotClass; 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_get_cardinality (GogPlot *plot,unsigned *full,unsigned *visible); void gog_plot_update_cardinality (GogPlot *plot,int index_num); void gog_plot_foreach_elem (GogPlot *plot,gboolean only_visible,GogEnumFunc handler,gpointer data); GSList const * 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); GogPlotDesc const * 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); void gog_plot_set_axis (GogPlot *plot,GogAxis *axis); GogAxis * gog_plot_get_axis (GogPlot const *plot,GogAxisType type); void gog_plot_update_3d (GogPlot *plot); void gog_plot_guru_helper (GogPlot *plot); void gog_plot_clear_series (GogPlot *plot); GogPlotView; int gog_plot_view_get_data_at_point (GogPlotView *view,double x,double y,GogSeries **series);
"guru-hints" gchar* : Read / Write "interpolation" gchar* : Read / Write "plot-group" gchar* : Read / Write "vary-style-by-element" gboolean : Read / Write "x-axis" guint : Read / Write "y-axis" guint : Read / Write
This is the object that visualizes data.
To manipulate the data shown in the plot, use gog_plot_new_series() and
gog_plot_clear_series()
Plots are implemented as plug-ins, so make sure the plug-in system is
initialized before trying to create one. See go_plugins_init()
GOffice ships a number of common plot implementations by default.
typedef struct {
GogObjectClass base;
GogPlotDesc desc;
GType series_type;
GogAxisSet axis_set;
/* Virtuals */
GOData *(*axis_get_bounds) (GogPlot *plot, GogAxisType axis,
GogPlotBoundInfo *bounds);
gboolean (*supports_vary_style_by_element) (GogPlot const *plot);
/* %TRUE if the plot prefers to display series in reverse order for
* legends (e.g. stacked plots want top element to be the last series) */
gboolean (*enum_in_reverse) (GogPlot const *plot);
void (*foreach_elem) (GogPlot *plot, gboolean only_visible,
GogEnumFunc handler, gpointer data);
void (*update_3d) (GogPlot *plot);
void (*guru_helper) (GogPlot *plot, char const *hint);
} GogPlotClass;
typedef struct {
struct {
double minima, maxima;
} val, logical;
gboolean is_discrete;
gboolean center_on_ticks;
GOFormat *fmt;
const GODateConventions *date_conv;
} GogPlotBoundInfo;
void gog_plot_request_cardinality_update (GogPlot *plot);
|
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.
|
GogPlot |
|
placeholder for full cardinality |
|
placeholder for visible cardinality |
void gog_plot_update_cardinality (GogPlot *plot,int index_num);
Update cardinality and cache result. See gog_chart_get_cardinality.
|
GogPlot |
|
index offset for this plot |
void gog_plot_foreach_elem (GogPlot *plot,gboolean only_visible,GogEnumFunc handler,gpointer data);
|
|
|
|
|
|
|
GSList const * gog_plot_get_series (GogPlot const *plot);
|
GogPlot |
Returns : |
A list of the series in plot. Do not modify or free the list.
|
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.
|
GogPlot |
|
GogAxisType |
|
GogPlotBoundInfo |
Returns : |
The data providing the bound (does not add a ref) |
gboolean gog_plot_supports_vary_style_by_element
(GogPlot const *plot);
|
|
Returns : |
GogSeries * gog_plot_new_series (GogPlot *plot);
|
GogPlot |
Returns : |
a new GogSeries of a type consistent with plot.
|
GogPlotDesc const * gog_plot_description (GogPlot const *plot);
|
|
Returns : |
gboolean gog_plot_axis_set_is_valid (GogPlot const *plot,GogAxisSet type);
|
|
|
|
Returns : |
gboolean gog_plot_axis_set_assign (GogPlot *plot,GogAxisSet type);
|
|
|
|
Returns : |
void gog_plot_axis_clear (GogPlot *plot,GogAxisSet filter);
A utility method to clear all existing axis associations flagged by filter
|
GogPlot |
|
GogAxisSet |
GogAxis * gog_plot_get_axis (GogPlot const *plot,GogAxisType type);
|
|
|
|
Returns : |
int gog_plot_view_get_data_at_point (GogPlotView *view,double x,double y,GogSeries **series);
Search a data represented at (x,y) in view and set series on success.
|
GogPlotView |
|
x position |
|
y position |
|
where to store the series |
Returns : |
index of the found data in series or -1.
|
"guru-hints" property"guru-hints" gchar* : Read / Write
Semicolon separated list of hints for automatic addition of objects in guru dialog.
Default value: NULL
"interpolation" property"interpolation" gchar* : Read / Write
Default type of series line interpolation.
Default value: "linear"
"plot-group" property"plot-group" gchar* : Read / Write
Name of plot group if any.
Default value: NULL
"vary-style-by-element" property"vary-style-by-element" gboolean : Read / Write
Use a different style for each segments.
Default value: FALSE
"x-axis" property"x-axis" guint : Read / Write
Reference to X axis.
Allowed values: <= G_MAXLONG
Default value: 0
"y-axis" property"y-axis" guint : Read / Write
Reference to Y axis.
Allowed values: <= G_MAXLONG
Default value: 0