Cartesian chart — version history
An animated cartesian chart — columns, bars, lines, areas, step lines, scatter and bubbles, heat maps, OHLC and candles — in ONE component whose type is set per series, so a combination chart (columns and a target line on two axes) is a single control. Introduced in 4.0.
4.0 — October 2026 #
New #
- First release. Categories first (
of_set_categories), then series:of_add_serieswith a type per series (TYPE_BAR,TYPE_LINE,TYPE_AREA,TYPE_SCATTER,TYPE_STEPLINE), and a type changed later redraws that series alone (within its family: a series of values never becomes a candle);ib_secondaryputs a series on a second value axis, graduated on its own side with its own step, rotation and grid lines. A NULL value is a gap: nothing is drawn, labelled or clicked there, and a line is cut. - Other data shapes, each with its own call: point series positioned by value on both axes, with an optional weight that sizes the bubble by area (
of_add_point_series); heat maps whose cells are coloured on a three-stop ramp (of_add_heat_series,of_set_value_labels); OHLC and candle series with a rising and a falling colour (of_add_ohlc_series,of_add_candle_series). - Live data:
of_set_series_values,of_set_series_pointsandof_set_series_ohlcgive a series new numbers of its own shape (-5otherwise) and the shapes slide to their new place instead of being drawn again;of_append_valuesandof_append_categoriespush only the new readings of a live chart and drop the oldest beyond a maximum;of_get_series_values,of_get_series_points,of_get_series_ohlcandof_get_value_labelsread back what the chart holds now. - An animated arrival (
ib_animated,ii_anim_duration,is_anim_easingwith the LiveCharts easing names,ii_anim_delaybetween two series); a workstation set to fewer animations is respected. - Stacking of bars and of areas (
ib_stacked), by value or by percentage (is_stack_mode, down to -100 for negative shares), a label inside a stacked bar taking black or white, whichever its bar carries; vertical or horizontal orientation of the whole frame (is_orientation). - Per series: label, colour, visibility, data labels written with a pattern (
is_label_format:#y#,#x#,#v#,#label#,#open#,#high#,#low#,#close#) and turned (ii_label_rotation), curve smoothing (id_smoothness), the wash under a line (ib_fill,il_fill_color), marker shape (is_marker) and stroke thickness (ii_thickness). - Axes named by role (
of_axis(AXIS_CATEGORY | AXIS_VALUE | AXIS_VALUE2), no handle for any other role): title, imposed bounds (NULL lets the axis follow its data, and a free bound reads back NULL; what goes past a bound is cut at the edge of the plot), step, label rotation on the category and the value axes, grid lines, a logarithmic scale for the value axes (ib_logarithmic); a value axis that follows its data takes zero in only when a bar or an area stands on it, so quotes and lines use the whole height; category labels that do not fit are written one in N, the first and the last always; coloured bands and threshold lines behind the data, on any of the three axes — across the categories, positions are counted from 1 (of_add_axis_section,of_add_axis_threshold,of_clear_axis_sections). - Number format of the axes, the labels and the panel, with the separators of the display language, for the whole chart or for one axis (
of_set_value_format,of_clear_value_format); a title, a legend above, below or beside the plot (ib_show_legend,is_legend_location), a grid (ib_show_grid); the chart as a PNG file withof_save_as_png. - The palette has a light and a dark set: every series stands out from the page in both kinds of theme, and a theme switch recolours the chart.
- The panel of values (
ib_value_tooltip): the pointer over a category shows every series and its value there, and a crosshair marks the column. - The user hides a series by clicking its legend entry (
ue_series_toggled) and clicks a bar or a point (ue_point_clicked, with the series key, the position counted from 1 and the value). - Keyboard and screen readers: the chart is reached with Tab, Left and Right walk the categories and show the panel, Up and Down choose the series, a point series or a heat map is walked point by point, Enter reports the point; its accessible name states the data of every kind of series. In a right-to-left application the chart keeps its mathematical direction.
- An add refuses (
-5) a key that is empty, holds/or|, or is already used, andof_add_seriesa type that is not one of its five; a change or a removal refuses an unknown key; the handle of a removed series is destroyed with it. ib_enabled = falsegreys the chart out: it keeps showing its data and stops answering the mouse and the keyboard, and leaves the Tab order.ue_script_error: a script error in the page reaches PowerBuilder with its message instead of being lost.of_set_property,of_get_propertyandof_component_name: drive a property by its name (settings screen, saved configuration).