New: Graph editing that fits your app

You can now add Graphy’s new point-and-edit editing experience to your app, with menus that open beside the part of a graph you click, and a settings panel for more options.



Use the panel to change graph types, adjust axes, add titles and show or hide labels. Or tweak the look and feel by changing the colour of one bar or a whole series, make a line thicker or move the legend.

End users can see each change as they make it, with undo and redo to help them try things out.

Developers can start by adding our built-in menus and panel with a few lines of code, then choose which controls to show and match them to your app’s design. You can also connect the same editing commands to your own custom toolbars or sidebar; edits from Graphy’s controls and your own all share one undo history.

Explore the editor in action in our SDK cookbook and get started with our documentation.

This is the first release of our new editing experience. We’d love to hear how it works in your app and what you’d like to be able to edit next.

  • Apps can use readObservationsTargetData to read selected values with their column labels and number formats, making it easier to build tables, exports or context for an assistant.

  • Style axis lines with style.axisLine.x and .y, while style.panelBorder now styles the whole frame and no longer accepts .top, .right, .bottom or .left.

  • Clear an axis’s title field to remove it, or set label: '' in code, while null uses the data column’s label.

  • Change colours on funnel, Mekko, lollipop, dumbbell, box plot and Sankey graphs, with matching stems, connections and nodes following your choice.

  • Graph modes are now named readonly, annotate and edit, with annotate replacing editable and edit replacing point-and-edit.

  • Configure “Made with Graphy” through config.content.graphyBadge, replacing brandMark and isBrandMarkVisible, and use GraphyBadge in place of BrandMark.

  • SDK option values and command types now use camelCase, such as topLeft, monthYear and setAxisLabel, and SetChartTypeCommand is now SetGraphTypeCommand.

  • Highlight and selection scopes now use observation, group and xValue in place of data-point, series and x-value.

  • Styling names are clearer: hoverStroke replaces hoverAffordance, while selection outlines use backingColor and backingAlpha instead of haloColor and haloAlpha.

  • For custom integrations, ColorRamp and sampleColorRamp are now Colormap and sampleColormap, while Scene.chrome and ChromeStyleReader become Scene.styles and SceneStyleReader.

  • Bar maxWidth now sets one limit for a whole layer, with conditional limits using where or state ignored with a warning.

  • Graph-count telemetry now includes the page’s hostname; set telemetry={false} on GraphProvider to turn it off.

  • Tooltips, hover guides and hover highlights update as new data arrives, even when your pointer stays still.

  • Axis lines stay with their axes when you switch to horizontal bars, move an axis to the other side or hide it.

  • Point visibility and size settings now work correctly with Bauhaus shapes, Botanical leaves, Gamma stars and mushrooms and Chalkboard points.

  • Line fills now appear in Bauhaus, Botanical, Gamma, Shiny and Chalkboard, and hovered lines or areas stay clear while the others fade.

  • Line thickness and dash settings now reach area edges in Botanical, Gamma and Shiny, while Shiny and Chalkboard dashes keep their gaps visible.

  • Selection outlines follow the drawn shapes in Bauhaus, Botanical, Gamma, Shiny and Chalkboard.

  • Value labels are easier to read over Bauhaus fills and Shiny areas and pie slices.

  • Chalkboard graphs play their entrance animation, and highlighting pie slices no longer redraws the whole pie.