What's New In QtGraphs 6.9

QtGraphs recently moved out of tech preview in Qt 6.8 and now, with 6.9, brings more improvements to the table encompassing some new features and a lot of bug-fixes. Let's look at some of the new features added: 

Graph Injection in QtQuick3D 

Being able to view graphs inside of a scene is quite a useful feature, and now with 6.9, graphs can be injected inside a QtQuick3D application by using the convenient "importScene" property of View3D. 

Here you can see a Bar Graph injected using the "importScene" function to combine it into one with a QtQuick3D scene. This can allow having graphs in complex environments and using them with more stylistic approaches. Furthermore, support for picking has also been added so the individual graph items can be selected. 

Transparency Support in Surface3D 

Surface3D now takes advantage of Order-Independent Transparency (OIT) which was introduced in QtQuick3D. Graphs tend to show a lot of overlapping items, especially in the case of 3D, so OIT support has resulted in improved visuals when transparency is used, and the data is understood more clearly. 

This graph is rendered using the Approximate OIT method. 

Updated Input Handling for Series 

As of 6.8, QtGraphs 2D only offered the "selectable" and "hoverable" properties for its series of graphs and individual clicks had to be implemented manually. Now, some more events have been added to match input handling as it was in QtCharts with the addition of "clicked", "doubleClicked", "pressed", and "released" signals. 

Spline Rendering for Scatter Graphs 

Spline graphs already exist in QtGraphs 2D, and now a 3D variation has been introduced for scatter graphs. It offers customizable resolution and dynamic updates. The image below shows how it's used to visualize the path between points. 

Axis-Alignment Support in 2D Graphs 

Usually when considering 2-dimensional graphs, the x-axis is displayed at the bottom and the y-axis is displayed on the left. In some cases, it might be more useful to have these axes on the adjacent sides of the graph. QtGraph 6.9 exposes another property called "alignment" which allows you to position the axis on one of these sides, the x-axis being either top or bottom and the y-axis being either left or right. 

Panning and Zooming in 2D Graphs 

There are more exciting updates to 2D graphs: Panning and zooming functionality been added as shown in the clip below.  Currently zoom works with respect to a point in the center and panning works with the familiar dragging action. 

In addition to these new components, there has been a magnitude of bug-fixes. Further development proceeds to squash out remaining bugs and to add requested features. 

 


Comments